66问答网
所有问题
两个16位二进制数相加单片机程序
如题所述
举报该问题
其他回答
第1个回答 2013-01-21
啥单片机?如果不考虑负数,那么:
32位CPU的,直接加,
16位的直接加,但要判断最高位是否溢出,
8位的,低8位先加,再高8位相加,同时加上低8位的进位,再判定最高位是否溢出。
以上供参考。
本回答被网友采纳
第2个回答 推荐于2018-05-07
;R2R3+R4R5=R1R2R3
ADD16:
MOV R1,#0
MOV A,R3
ADD A,R5
MOV R3,A
MOV A,R2
ADDC A,R4
MOV R2,A
JNC ADD161
MOV R1,#1
ADD161:
RET
本回答被网友采纳
相似回答
两个16位二进制数相加单片机程序
答:
32位CPU的,直接加,
16位
的直接加,但要判断最高位是否溢出,8位的,低8位先加,再高8位相加,同时加上低8位的进位,再判定最高位是否溢出。以上供参考。
PIC
单片机
···
两个十六位二进制数
求和. (30H)(31H)+(32H)(33H)=...
答:
CLRF 35H CLRF 34H MOVF 31H ADDWF 33H,W MOVWF 36H BTFSC STATUS,C INCF 35H MOVF 30H ADDWF 32H,W BTFSC STATUS,C INCF 34H ADDWF 35H,F BTFSC STATUS,C INCF 34H
单片机程序
编写
答:
TO_BCD:MOV R2, #16 ;转换
16位
CLR A MOV 38H, A ;先清零 MOV 39H, A MOV 3AH, A LOOP:MOV A, 41H ;取被转换
二进制数
RLC A MOV 41H, A MOV A, 40H RLC A ;最高位移动到C MOV 40H, A MOV A, 3AH ;取数 ADDC A...
用keil软件如何实现51
单片机二进制数
的累加?
答:
用KEIL写51的汇编
程序
,可以用
二进制数字
后
加
“B”表示,比如0x2A = 00101010B 而KEIL的C编译器不支持写二进制数,所以KEIL的C程序不能直接用二进制数表示。但如果你自定义一个#define B00101010 0x2A 这句话,那下面的程序就可以直接使用B00101010来表示了。把这个些写进一个头文件里,用的...
8051
单片机
里如何把
16位二进制数
送入累加器A?
答:
MOVX @DPTR,A MOVX A,@DPTR
16位
的地址的8位数据 给A 不可能是 16位 , 除非是 高级16位的
单片机
单片机16位二进制
转换成BCD码
程序
理解
答:
在前面,是用 RLC 指令,把
二进制数字
,逐位移动到 Cy。楼主给出的这三
个小程序
,也是把左移,只是用的带进位
的加法
指令。MOV A, R4 ADDC A, R4 ;二倍的 R4,就是左移一位,并且把 Cy 填入最低位。DAA ;这就成为 BCD 码了。依此类推,R5、R6,都用带进位加,进行左移...
大家正在搜
单片机二进制转十六进制程序
单片机二进制转十进制
单片机二进制十六进制
两个二进制数相加
单片机十进制转十六进制
两个二进制相加怎么算
单片机16进制
单片机16进制转换表
单片机只能识别16进制码
相关问题
51单片机两个十六进制数相加编程
单片机中把两个16位无符号单字节数求和相加,设计程序?
两个十六位二进制数相减,完整汇编语言程序
如何用汇编设计两个16位数相减的程序
单片机两个十六位两进制数怎么判别大小
怎么把一个16位的二进制数高八位和第八位分别存进51单片机(...
51单片机二进制数转换成十进制数一段精典小程序,谁来帮我分析...
单片机指令部分,两个16进制的数怎么相乘?