编写程序,将片内RAM32H单元内的两个BCD码十进制数拆开并变成相应的ASCII码,分别存入31H和32H单元
答:程序如下: MOV R0,#32H MOV A,@R0 ANL A,#0FH ORL A,#30H MOV 31H,A MOV A,@R0 SWAP A ANL A,#0FH ORL A,#30H MOV 32H,A
举一反三
- 十进制数32的压缩BCD码和ASCII字符串可分别表示为( ) A: 50、51、50 B: 20H、33H、32H C: 32、33、32 D: 32H、33H、32H
- 编程将R2中存放的8位无符号数转换成3位BCD码,存放于片内RAM的32H单元(存放数的百位)和31H(存放数的十位、个位)。
- 试编写程序,将片外RAM的2000H、2001H两个单元的内容分别存入片内RAM的20H单元和寄存器R0中
- MCS-51单片机上电复位时,CPU从()H单元开始执行程序,SP=()H,第一个压入堆栈的数据将位于()(片内,片外)RAM的()H单元。
- 片内RAM的31H单元开始存放一组8位带符号数,字节个数存放在30H单元中,编写程序统计其中正数、零和负数的数目,并把统计结果分别存入20H、21H和22H单元中
内容
- 0
____=39H ____=00H 将____,____两相邻单元中存放的未组合型BCD码压缩成组合型BCD码,并存入____单元,0®____
- 1
设两个6位无符号BCD码分别存放在片内30H~32H和40H~42H单元中,试编写程序,求这两个多字节BCD码之和,并将结果存放回30H~32H单元中。补充完整以下程序。MOV R0,#30H MOV R1,#40H MOV R2,#3 CLR C LOOP:MOV A,@R0<br/>ADDC A,@R1 ______ MOV @R0,A INC R0 INC R1 ______ SJMP $
- 2
已知大写字母A的ASCII码为十进制数41H,则字母E的ASCII码为( )。 A: 43 H B: 44 H C: 45 H D: 46 H
- 3
将内部RAM 50H单元中的组合BCD码转换成非组合BCD码,分别存于51H(低位)和52H(高位)单元中。
- 4
已知英文小写字母d的ASCII码为十进制数100,则英文小写字母h的ASCII码为十进制数______。