编写3字节二进制减法子程序 -单片机编程
来源:互联网 发布:bbc纪录片 知乎 编辑:程序博客网 时间:2024/05/16 04:44
单片机不难的编程题!急,编写3字节二进制减法子程序。
用主程序调用多组数据来调试,需考虑无借位和有借位两种情况。
入口:被减数:52H,51H,50H,50H为最低位;
减数:42H,41H,40H,40H为最低位;
出口: 差:外部数据存贮器2003H~2000H(2000H为最低位)。
上了3周课实在是还没入门,编不出来!麻烦哪个好心的高手帮忙下!!!谢谢。
悬赏分:15 - 解决时间:2009-10-15 19:24
提问者: stefine_ - 一级
;-----------------------------------------
最佳答案:
有三个字节参加相减,且地址是连续的,那么循环3次即可。
MOV R0, #50H ;被减数地址
MOV R1, #40H ;减数地址
MOV DPTR, #2000H ;差的地址
CLR C
MOV R2, #3 ;循环3次
S_LOOP:
MOV A, @R0 ;取
SUBB A, @R1 ;减
MOVX @DPTR, A ;存
INC R0
INC R1
INC DPTR
DJNZ R2, S_LOOP
CLR A
SUBB A, #0 ;得到借位
MOVX @DPTR, A ;存
RET
;-----------------------------------------
回答者: 做而论道 - 八级 2009-10-15 19:22
提问者对于答案的评价:谢谢
原文网址:http://zhidao.baidu.com/question/121521255.html
;-----------------------------------------
- 编写3字节二进制减法子程序 -单片机编程
- 编写3字节二进制加法子程序
- 字节合并 -单片机编程
- 二进制减法
- 二进制减法
- R0中的8位二进制数转换成3位BCD码 -单片机编程
- 单片机编程-3
- 二进制——减法
- 二进制加法与减法
- 单片机嵌入式C编程获取高低字节
- 单片机编程题 -3
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- 汇编语言编写十进制数到二进制数的进制转换并显示的子程序
- 编写子程序的原则
- 实验10 编写子程序
- 实验11 编写子程序
- 谈谈51单片机延时子程序
- 单片机定时问题:亮100ms、灭300ms
- 汇编中字符串初始化的问题,“7, 13, 10, 13, 10” 是什么意思?
- 编写3字节二进制加法子程序
- 树莓派利用360wifi2开机自动连接路由器
- 编写10位十进制加法子程序(十进制数采用压缩BCD码存放)
- 编写3字节二进制减法子程序 -单片机编程
- linux常用命令—— 磁盘管理(十一)
- 将片外RAM的1000H单元开始的100个字节数据相加 -单片机编程
- R0中的8位二进制数转换成3位BCD码 -单片机编程
- 在 win-TC 中,如何判断输入的是换行符?
- C++ —— 数据结构之 顺序栈,链式栈?
- android电话状态的记录
- 将A中的二进制数转换为3位的BCD码,其中百位数存放......
- 把N个二进制数据转换成16进制字符数据