将16位数除以2 [PIC单片机]

时间:2012-11-26 03:19:12

标签: pic

如果将16位值存储(在pic微控制器中)作为高字节和低字节,那么如何将它们除以2呢?如何将16位数字旋转到右边?

感谢。

1 个答案:

答案 0 :(得分:6)

将16位数除以2相当于将数字右移一位 * 。清除进位标志,将高位字节向右旋转进位,然后将低位字节向右旋转进位。您可以找到here的代码:

LSR16   MACRO   VAR16
    BCF     STATUS, C       ; Clear carry
    RRF     (VAR16)+1,F     ; Rotate high byte right
    RRF     (VAR16),F       ; Rotate low byte right
    ENDM

<小时/> * 当然这是一个整数除法:当奇数除以2时,0.5被截断。