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