描述
ITB (16位整数从二进制到十进制的转换)将ACCU 1-L的内容解释为16位整数,并将其转换为三位二进制编码的十进制数(BCD码)。结果存储在累加器1的低字中。位0到位11包含BCD数字的值。位12至位15用来表示
BCD数字的符号状态(0000 = 正,1111= 负)。累加器1的高字和累加器2保持不变。
BCD数字的范围为"-999"至"+999"。如果超出允许范围,则状态位OV和OS被置位为1。
执行该指令时不涉及RLO,也不会影响RLO。
______________________________________________________
以上文字及图片皆为ITB指令的帮助,我相问的是图片中的mw10用二进制表示为什么是1111-1110-0110-0011,难道整数-413不应该是1000-0001-1001-1101吗?
图片说明:
最佳答案
整型数据负数如何表示:
413: 0000 0001 1001 1101 这个数值是-413的绝对值,然后将这个二进制数取反码:
反码:1111 1110 0110 0010 ,这个反码再加1就得到了-413的二进制表达格式了:
-413 :1111 1110 0110 0011
负数就是绝对值数的二进制取反码,然后在加1;
提问者对于答案的评价:
谢谢!我犯了这个基本的错误
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc169591.html