說明
使用“加載”指令,可加載累加器 1 中特定操作數的內容。并在下列某個存儲區中,通過字節、字或雙字對待加載的操作數進行尋址:
輸入和輸出的過程映像 (I, Q)
位存儲器 (M)
臨時本地數據 (L)
數據塊 (DB,DI)
指針
I/O (PI)
定時器 (T)
計數器 (C)
累加器 1 的存儲區域以字節為單位,有 32 位。
該指令以字節為單位將待裝載的操作數內容,寫入累加器 1 的低字。累加器 1 中的剩余字節將用“0”填充。
該指令以字為單位將待加載的操作數內容寫入累加器 1 的低字。該尋址字節的高位將因此傳送到累加器 1 的低字中(位 0 到 7)。而該尋址字節的低位則寫入累加器 1 的高位。累加器 1 高字中的剩余字節將用“0”填充。
該指令以雙字為單位將待加載的操作數內容寫入累加器 1 的 32 個位中。高地址位字節將因此傳送到累加器 1 的低字節中(位 0 到 7)。而將低地址字節寫入 24 到 31 位中。
下表顯示的示例說明了通過裝載字節、字和雙字格式的操作數,對累加器 1 內容進行更改:
指令 | 累加器 1 | |||||||
---|---|---|---|---|---|---|---|---|
31 . . . | . . . 24 | 23 . . . | . . . 16 | 15 . . . | . . . 8 | 7 . . . | . . . 0 | |
加載一個字節: L MB10 |
0000 | 0000 | 0000 | 0000 | 0000 | 0000 |
|
|
加載一個字: L MW10 |
0000 | 0000 | 0000 | 0000 |
|
|
||
加載雙字: L MD10 |
|
|
|
|
在裝載指定操作數的過程中,累加器 1 中的原有內容將移動到累加器 2 中?!凹虞d”指令將累加器 1 的所有內容都傳送到累加器 2 中。在此過程中,累加器 2 中的原有內容丟失。
無論邏輯運算結果以及狀態位如何,CPU 都會執行該指令。該指令既不影響邏輯運算結果也不影響狀態位。
下表列出了“加載”指令的參數:
參數 | 聲明 | 數據類型 | 存儲區 | 說明 |
---|---|---|---|---|
<操作數> | Input | BYTE、WORD、DWORD、SINT、INT、DINT、USINT、UINT、UDINT、定時器、REAL、DATE、TOD、CHAR | I、Q、PI、M、L、DB、DI、T、C、指針、參數 | 加載了內容的操作數。 |
示例
以下示例說明了該指令的工作原理:
STL | 說明 |
---|---|
L "Tag_Value_1" | // 加載累加器 1 中操作數“Tag_Value_1”的值 |
L "Tag_Value_2" |
// 將累加器 1 中的內容移到累加器 2 中。 // 加載累加器 1 中操作數“Tag_Value_2”的值 |
*R |
// 將累加器 1 和 2 中的值相乘。 // 將乘積存儲在累加器 1 中。 |
L "Tag_Value_3" |
// 將累加器 1 中的內容移到累加器 2 中。 // 加載累加器 1 中操作數“Tag_Value_3”的值 |
+R |
// 將累加器 1 和 2 中的值相加。 // 將和值存儲在累加器 1 中。 |
T "Tag_Result" | // 將結果(累加器 1 的內容)傳送到操作數“Tag_Result”。 |
審核編輯:劉清
-
存儲器
+關注
關注
38文章
7484瀏覽量
163765 -
西門子
+關注
關注
94文章
3034瀏覽量
115783 -
定時器
+關注
關注
23文章
3246瀏覽量
114720 -
STL
+關注
關注
0文章
86瀏覽量
18319 -
累加器
+關注
關注
0文章
50瀏覽量
9447
原文標題:西門子博途STL指令L:加載
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論