- 三菱FX3系列PLC功能指令應用全解
- 李金城編著
- 1527字
- 2024-01-19 15:51:34
1.2.2 16位與32位
1.位、數位、字節、字和雙字
在學習資料或和他人進行交流時,經常會碰到位、字節、字、雙字等這些名詞,這里對這些名詞術語做一些介紹。這些知識是學習和掌握PLC所必備的,務必要正確理解和應用。
PLC處理的量有兩種:一種是開關量,即只有“1”和“0”兩種狀態的量,一個開關量就是一位,輸入端X和輸出端Y均是一位開關量。另一種是模擬量,模擬量要通過一定的轉換(模數轉換),轉換成開關量才能由PLC進行處理。這種由模擬量轉換過來的開關量,可以把它稱為數據量。數據量雖然也是開關量,但它的特點是它是由多位開關量組成的一個存儲單元整體,這些多位開關量在同一時刻同時被處理。根據計算機發展的過程,產生了4位、8位、16位、32位等整體處理的數據存儲單元,同時也形成了位、字節、字、雙字等名詞術語。
位(bit):數據量是由多個開關量組成的,其中每一個開關量也是只有兩種狀態,我們把每一個開關量稱為數據量的位,也稱二進制位(bit)。
數位(digit):由4個二進制位組成的數據量。因4位很快被8位代替,所以現在已經很少用到數位這個名詞了。
字節(byte):由8個二進制位組成的數據量。8位機曾經存在很長一段時間,并由此派生出來一些高、低位的術語。如高4位(高址)、低4位(低址)、高位(MSD)、低位(LSD)等,如圖1-7所示,b0為低位,b7為高位。

圖1-7 字節組成
字(word):由16個二進制位組成的數據量。如圖1-8所示,b0為低位,b15為高位。b7~b0為低8位(低字節),b15~b8為高8位(高字節)。

圖1-8 字組成
雙字(D):由32個二進制位組成的數據量。在FX系列PLC中,雙字是由兩個相鄰的16位存儲單元所組成的數據量整體。當用字來處理數據量時,碰到所表達的數不夠或處理精度不能滿足時,就用雙字來進行處理。但是,在硬件中,并沒有32位的整體存儲單元(32位機才是32位存儲單元)。同樣,Dn為低16位,Dn+1為高16位,b31為高位,b0為低位,如圖1-9所示。

圖1-9 雙字組成
關于位、字節、字、雙字的含義,不同的PLC基本上是一致的。但關于位、字節、雙字的關系處理,不同的PLC是不一樣的。
例如,PLC的數據存儲器容量,三菱FXPLC是以字計,而西門子則是以字節計。又如,在三菱FX系列PLC中,16位的字其高8位(b15~b8)在前,低8位(b7~b0)在后,而西門子PLC則相反,低8位(b15~b8)在前,高8位(b7~b0)在后。在三菱FX系列PLC中基本上沒有字節的使用,數據量的處理統一按16位進行,而在西門子PLC中,可以以字節、字、雙字等單位進行處理。
2.三菱FX系列PLC的雙字處理
三菱FX系列PLC的數據寄存器為16位寄存器。16位數據量所表示的數值和數據的精度不能滿足控制要求時,一般采用兩個數據寄存器組成雙字進行擴展。
三菱FX系列PLC的功能指令的助記符為16位操作的助記符,為表示16位和32位操作的區別,在助記符前加前綴“D”表示所執行的功能操作為32位操作。例如,加法指令的助記符ADD,如為ADD則為16位操作,如為DADD則為32位操作,兩者不能混淆。但有些指令,例如,浮點運算指令,它沒有16位操作,只有32位操作,因此,在應用時必須加D。
FX系列PLC規定,采用雙字處理時,兩個數據寄存器必須為編號相鄰的數據寄存器。同時規定,編號大的為高16位,編號小的為低16位。例如,D0,D1可為雙字寄存器,D1存高16位,D0存低16位。原則上講,采用雙字時,起始編號可以為偶號,也可以為單號,但建議采用偶號起始,如D2,D3;D20,D21等。在指令格式中,都用低位編號寫入源址或終址。
【例1】說明指令DADD D0 D2 D10的操作功能。
ADD為加法指令,DADD表示32位加法操作,其操作功能將(D1,D0)的數與(D3,D2)的數相加,加的結果送到(D11,D10)中。
三菱FX系列PLC中不存在高于32位的操作,但在應用乘法指令時,結果會是一個64位數,其存儲方式依然是編號緊緊相鄰的4個數據寄存器,編號最小的為低位,編號最大的為高位。