- 艾寶物聯IOBOV? ─ 工業無線測控專家
轉換指令將累加器1中的數據進行類型轉換,轉換的結果仍在累加器l中。能夠實現的轉換操作有:BCD碼和整數及長整數間的轉換,實數和長整數間的轉換,數的取反、取負,字節擴展等。
在STEP 7中,整數和長整數是以補碼形式表示的。BCD碼數值有兩種:一種是字(16位)格式的BCD碼數,其數值范圍從-999到+999;另一種是雙字(32位)格式的BCD碼數,范圍從-9999999到+9999999。
指令 |
說 明 |
BTI |
將累加器1低字中的3位BCD碼數轉換為16位整數 |
BTD |
將累加器1中的7位BCD碼數轉換為32位整數 |
ITB |
將累加器1低字中的16位整數轉換為3位BCD碼數 |
ITD |
將累加器l低字中的16位整數轉換為32位整數 |
DTB |
將累加器1中的32位整數轉換為7位BCD碼數 |
DTR |
將累加器1中的32位整數轉換為32位浮點數 |
l BTI指令
SLT格式: BTI
說明:將累加器1低字中的3位BCD碼數轉換為16位整數,裝入累加器1的低字中(0~11位);低字的最高位(15位)為符號位。
累加器1的高字及累加器2的內容不變。
例3.6.1 L MW 10
BTI
T MW20
l BTD指令
SLT格式: BTD
說明:將累加器1中的7位BCD碼數轉換為32位整數,裝入累加器1中,(0~27位);最高位(31位)為符號位。l ITB指令
SLT格式: ITB
說明: 將累加器1低字中的16位整數轉換為3位BCD碼數,16位整數的范圍是-999~+999。如果欲轉換的數據超出范圍,則有溢出發生,同時將OV和OS位置位。
累加器1的低字中(0~11位)存放三位BCD碼。(12~15)位作為符號位,(0000)表示正數,(1111)表示負數。累加器1高字(16~31位)不變。
例3.6.2
L MW 10
ITB
T MW20
l ITD指令
SLT格式: ITD
說明: 將累加器l低字中的16位整數轉換為32位整數,16位整數的范圍是-999~+999。如果欲轉換的數據超出范圍,則有溢出發生,同時將OV和OS位置位。
累加器1的低字中(0~11位)存放三位BCD碼。(12~15)位作為符號位,(0000)表示正數,(1111)表示負數。累加器1高字(16~31位)不變。
例3.6.3 L MW 10
ITB
T MW20
l DTB指令
SLT格式: DTB
說明: 將累加器1中的32位整數轉換為7位BCD碼數,32位整數的范圍是-9999999~+9999999。如果欲轉換的數據超出范圍,則有溢出發生,同時將OV和OS位置位。
累加器1中(0~27位)存放7位BCD碼。(28~31)位作為符號位,(0000)表示正數,(1111)表示負數。
例3.6.4
L MD 10
DTB
T MD20
l DTR指令
SLT格式: DTR
說明: 將累加器1中的32位整數轉換為32位浮點數(IEEE-FP)
例3.6.5
L MD 10
DTR
T MD20