PIC双字节取补运算,搞不明白!!!

2020-02-06 09:57发布


NEG_A:                                        ;双字节取补子程序

                COMF      DATA_LOW
                INCF       DATA_LOW
                BTFSC    STATUS,Z        
                DECF      DATA_HIGH     
                COMF     DATA_HIGH

                RETURN

请问低字节DATA_LOW取补后加1后,如果有进位,为什么要将高字节DATA_HIGH减1再去补呢? 不应该是加1取补吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
elec2000
1楼-- · 2020-02-06 11:58
字节取反,原数越大取反后越小

低字节取反后+1有进位表示高字节取反后也要+1,在取反前-1相当于取反后+1。
mcu5i51
2楼-- · 2020-02-06 16:09
只是一个顺序问题;也可以先取反两个数,之后再低位加1,判断后高位加1

一周热门 更多>