工控玩家
澧縣電氣自動化
級別: 家園常客
|
(MOV HFFFF D0)此傳送指令執行的數據大于了32767,傳送完畢后是否自動存放在32位數據寄存器D1 D0中??如不這樣FFFF傳到D0就等于-1了。 |
---|---|
|
工控玩家
澧縣電氣自動化
級別: 家園常客
|
哪FFFF傳到D0后不就變成-1了嗎?本來HFFFF=K65535我認為就存在D1 D0,當監控D0時等于-1, 但監控32位(D1 D0)時就等于K65535了。只有看成32位才不出錯。 |
---|---|
|
工控玩家
澧縣電氣自動化
級別: 家園常客
|
D0的每位都為1,有兩種可能, 如當16位看,最高位為符號位,則等于K-1 如當32位看(D1 D0)第16位就不是符號位了,則等于HFFFF也就是K65535 如要保證執行MOV后不出錯,只有當32位看了,這個問題沒看到資料上說過。 |
---|---|
|
mayanheng
級別: 略有小成
|
4位16進制數。用16位二進制數來表示。夠用了。不用32位。再說MOV (21)也不是傳送32位數的指令 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 -----------------二進制 F F F F -------------------16進制 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0-----------------二進制 0 0 0 0 -------------------16進制 0000 0 0001 1 0010 2 0011 3 0100 4 0101 5 0110 6 0111 7 1000 8 1001 9 1010 A 1011 B 1100 C 1101 D 1110 E 1111 F [ 此帖被mayanheng在2010-11-24 18:24重新編輯 ] |
---|---|
|
mayanheng
級別: 略有小成
|
不知樓主的32767是個什么數,10進制,8進制,16進制,2進制 BCD碼???? 大概是10進制 一般PLC不認10進制 一般是16進制,2進制 BCD碼 [ 此帖被mayanheng在2010-11-24 18:42重新編輯 ] |
---|---|
|