首页 > 电脑 > 1.编写程序,将内部RAM中30H单元存放的无符号二进制数转换成十进制数形式

1.编写程序,将内部RAM中30H单元存放的无符号二进制数转换成十进制数形式

电脑 2022-11-18

将内部RAM中30H单元存放的无符号二进制数转换成十进制数形式

ORG 0020H MOV R0,#30H ;数据首地址存入R0 MOV A,@RO ;取第一个数据存入累加器A MOV R1,#0AH ;比较次数,A=10 LOOP1: INC R0 ;修改地址指针,使其指向下一地址单元 MOV 30H,@R0 ;将比较的数暂存于30h CJNE A,30H,CHK ;两个数比较 CHK: JNC LOOP2 ;如果A大,则转换 MOV A,@R0 ;如果A小,则将较大的数存入A LOOP2: DJNZ R1,LOOP1 ;R1减1,如果其不为0,则继续循环 MOV 40H,A ;比较完毕,存结果 END

将30H单元中的无符号二进制转换为3位BCD码。转换结果的百位、十位、个位分别存放到33H、32H、31H

MOV A, 30H MOV B, #100 DIV AB ;除以100 MOV 33H, A ;存放百位数. MOV A, B MOV B, #10 DIV AB ;除以10 MOV 32H, A ;存放十位数. MOV 31H, B END

单片机小的编程,编了下不知道对不对!望大家指正谢谢!

修改了错误,增加了原始数据,如下所示。 ORG 0000H SJMP MAIN ORG 0050H MAIN: ;01H 23H 45H 67H 89H 0ABH 0CDH 0EFH MOV 30H, #01H MOV 31H, #23H MOV 32H, #45H MOV 33H, #67H MOV 34H, #89H MOV 35H, #0ABH MOV 36H, #0CDH MOV 37H, #0EFH MOV R2, #8 MOV R0, #30H ;是30,不是20 MOV R1, #40H ;是40, 不是30 MOV DPTR, #ASCTB LOOP: MOV A, @R0 A

求 单片机 编写程序,使用直接寻址法和字节交换法将内部RAM 30H和31H 单元的内容交换

1,直接寻址: mov 40h,30h ;把30h内容暂时保存到40h中 mov 30h,31h ;31h内容送30h mov 31h,40h ;把原来30h内容送31h,完成交换。 2,字节交换法: mov a,30h;30h内容送a xch a,31h;a内容与31h内容交换 mov 30h,a;把交换后a的内容(即原来31h内容)送30h,完成题目要求的交换。

编写程序,将内部RAM30H~4F单元共32个无符号书中的最大者找出,存入50H单元。

ORG 0000H JMP MAIN MAIN: MOV 50H,30H;先将第一个数当成最大者,然后逐个比较 MOV R0,#31H LOOP: CLR C MOV A,@R0 SUBB A,50H ;A-(50H),如果A大,则Cy=0 ,否则(50H)大 JC NEXT ;A和最大值(50H)比较,如果A大于(50H),那就把A赋值给50H MOV 50H,A NEXT: INC R0 MOV A,R0 CJNE A,#50H,LOOP SJMP $

标签:信息技术 编程 单片机 计算机科学 C语言

大明白知识网 Copyright © 2020-2022 www.wangpan131.com. Some Rights Reserved. 京ICP备11019930号-18