想吃火鍋雞
級別: 正式會(huì )員
![]() |
圖片:
![]()
圖片:
![]() 初學(xué)定位控制,在書(shū)中出現3U新增位元件的介紹。 n為寄存器D編號,0-8511 b為寄存器中二進(jìn)制位的編號,0-F 把H8421送入D0,其最高位為1。 則位元件D0.F常開(kāi)點(diǎn)閉合,驅動(dòng)D0.3 同時(shí),當D0.3被驅動(dòng)后,D0中的b3位由0變1,此時(shí)D0中的數發(fā)生變化 由H8421變?yōu)镠8429 H8421換算為二進(jìn)制 1000 0100 0010 0001 H8429換算為二進(jìn)制 1000 0100 0010 1001 可以看出b3位由0變1,所以H8421變?yōu)镠8429,到這里可以理解。 但是從監視模式中讀取D0數值可以發(fā)現,把H8421送入D0中時(shí),D0為-31711,D0變?yōu)镠8429時(shí),D0為-31703 -31711轉二進(jìn)制 1 111 1011 1101 1111 -31703轉二進(jìn)制 1 111 1011 1101 0111 最左邊1表示正負,其余15位表示數值,也是b3位變化, 但是-31711的二進(jìn)制化為十六進(jìn)制是FBDF -31703的二進(jìn)制化為十六進(jìn)制FBD7,并不是上面的8421和8429。 請高手賜教上面的進(jìn)制換算問(wèn)題出在哪里? |
---|---|
|
菜鳥(niǎo)入行
級別: 論壇先鋒
![]() ![]() |
H8421太大了。 相當于K33825. 已經(jīng)超過(guò)了單字節D可以存儲的上限,所以變成負數了。 在32767以?xún),你的算法是對的?br /> 超過(guò)32767,要用DMOV ,會(huì )占用D0和D1,這樣才能按你的算法來(lái)。 |
|
---|---|---|
|