《单片机》编程题题库答案docxWord文档下载推荐.docx
- 文档编号:16522897
- 上传时间:2022-11-24
- 格式:DOCX
- 页数:86
- 大小:48.36KB
《单片机》编程题题库答案docxWord文档下载推荐.docx
《《单片机》编程题题库答案docxWord文档下载推荐.docx》由会员分享,可在线阅读,更多相关《《单片机》编程题题库答案docxWord文档下载推荐.docx(86页珍藏版)》请在冰豆网上搜索。
MOVX©
DPTR,A
INCR1
《单片机原理及应用》编程题题库参考答案
六、编程(每题10分)
1、内部RAM30H和31H单元中存放着2个0-9的ASCII码(高位字节在前),请将其转换为压缩BCD码(高位在前)并存入外部RAM2300H单元中。
解:
ORG
LJMPORG
MOVANLSWAPMOVMOVANLORLMOVMOVX
OHSTART
30H
A,30H
A,#OFHARO,AA,31H
A,#OFH
A,RO
DPTR,#2300H@DPTR,A
2、将存放在内部RAM30H-35H单元的压缩型BCD码转换成相应的ASCII码,依次存放到外部RAM2100H开始的单元区中。
ORG0HLJMPSTARTORG30H
MOVRO,#30H
MOVR2,#06H
MOVDPTR,W2100HLOOP:
SWAP
A
ANL
ORL
A,#30H
MOVX
@DPTR,A
MOVDPTR,#2000H
MOVX@DPTR,A
6、将存放在内部RAM20H-2FH单元的压缩型BCD码(高位在前)转换成相应的ASCII码,依次存放到外部RAM1000H开始的单元区中。
ORG0H
LJMP
START
ORG
MOV
RO,#20H
R2,#10H
DPTR,#1000H
A,@R0
SWAPA
ANLA,#OFH
ORLA,#30H(或ADDA,#30H)
MOVA,@R0
ANLA,#0FH
7、内部RAM30H和38H开始的单元分别存放着8个压缩BCD码,请将对应单元的内容相加(不考虑溢出),并将和存入外部RAM1000H开始的单元中。
ORG0
4、请编写多字节无符号数减法程序。
被减数存放在内部RAM20H开始的8个单元中,减数存放在内部RAM30H开始的8个单元,请将差存放到外部RAM2000H开始的8个单元中,借位存放到0V标志中。
注意:
所有数据均按照从低字节到高字节的顺序存放。
MOV
RO,#20H
Rl,#30H
DPTR,#2000H
R2,#08H
CLR
C
SUBB
A,@R1
@DPTR,A
INC
RO
R1
DPTR
DJNZ
R2,LOOP
OV,C
SJMP
$
5、内部RAM40H和41H单元中存放着2个0-9的ASCII码(高位字节在前),请将其转换为压缩BCD码(高位在前)并存入外部RAM2000H单元中。
ORG0H
MOVA,40H
MOVRO,A
MOVA,41H
ANLA,#0FH
ORLA,RO
9、两个8字节压缩BCD码分别存放在内部RAM30H和40H开始的连续单元中(低位字节在前),请将二者求和(不考虑溢出情况),并将和存入外部RAM1000H开始的单元中。
RO,#30H
Rl,#40H
R2,#8
LOOP:
ADDC
DA
评分办法:
程序设计思路正确可得5分;
对于仅写出部分指令的学生可酌情给1—4分;
程序编制正
确可得满分,若存在少量错误,可酌情扣1-3分。
10、将存放在内部RAM20H-2FH单元的十六进制数转换成ASCII码,依次存放到外部RAM2000H开
始的单元中。
R2,#16
DPTR,#2000H
R3,DPH
R4,DPL
A,#OFH
DPTR,#TAB
MOVC
A,@A+DPTR
DPH,R3
DPL,R4
RO,#30H
Rl,#38H
R2,#08
ADD
8、请编写多字节无符号数加法程序。
被加数存放在内部RAM20H开始的8个单元中,加数存放在内部RAM30H开始的8个单元,请将和存放到外部RAM2000H开始的8个单元中,进位存放到F0标志中。
FO,C
程序编制正确可得满分,若存在少量错误,可酌情扣1-3分。
12、请编写多字节无符号数减法程序。
被减数存放在内部RAM30H开始的8个单元中,减数存放在内部RAM38H开始的8个单元,请将差存放到外部RAM1000H开始的8个单元中,借位存放到F0标志中。
START:
R1,#38H
DPTR,ttlOOOH
R2,#8
R2,LOOP
C,FO
13、请编写多字节无符号数减法程序。
被减数存放在内部RAM20H开始的16个单元中,减数存放在内部RAM30H开始的16个单元,请将差存放到外部RAM2000H开始的16个单元中,借位存放到0V标志中。
注意:
ADDR1
EQU
20H
ADDR2
LEN
16
ADDR3
2000H
DPTR,#TAB
R4,DPL
SJ^IP
TAB:
DB
'
0123456789ABCDEF'
11、内部RAM30H和外部RAM2200H开始的单元分别存放着两个8字节十六进制数(低位字节存放在前),请将二者相加(不考虑溢出情况),并将和存入内部RAM40H开始的单元中。
DPTR,W2200H
A,@DPTR
@R1,A
[NC
DJNZR2,LOOP
不要求使用伪指令。
若仅写对少量指令,可酌情给1-3分;
15、将存放在内部RAM30H-35H单元的十六进制数转换成相应的ASCII码,依次存放到外部RAM1100H开始的单元区中。
(注:
每个字节转换时先转换高四位)
DPTR,#1100H
R2,#6
取需要转换的数
A,#OFOH
屏蔽低4位
PUSH
DPH
DPL
保护目的地址
A,@A+DPTR
查表得ASCU码
POP
恢复目的地址
存转换后的ASCII码
修改目的地址指针
屏蔽高4位
RO,#ADDR1
Rl,#ADDR2
DPTR,#ADDR3
R2,#LEN
©
DPTR,A
若仅写对少量指令,可酌情给1-3分;
14、将存放在内部RAM20H-3FH单元的压缩BCD码转换成ASCII码,依次存放到外部RAM2300H开始的单元中。
每个单元均先转换高四位)
2300H
RO,#ADDR1
DPTR,#ADDR2
R2,#LEN
A,#0F0H
A,#30H(或ADDA,#30H)
参考程序清单如下:
;
数组长度为16个字节
R3,#02H
;
数组1的首地址高8位
R4,#03H
数组2的首地址高8位
R5,#04H
和数组的首地址高8位
DPL,#0
数据指针低8位清零
A,@DPTR
取被加数
R1,A
存被加数
DPH,R4
取加数
A,R1
求和
DPH,R5
存和
指向下一字节
未加完则循环
若仅写对少量指令,可酌情给1-3分;
18、编程求内部RAM中40H-4FH共16个单元中的内容的和(结果为2字节),并将和放入50H和51H单元中(高8位在50H)o
RO,#40H
数据区首地址送RO
R2,#16
单元数送R2
R3,#0
和的高8位清零
和的低8位清零
JNC
NEXT
没有进位则转移
R3
和的高8位存储单元内容加1
NEXT:
指向下一个单元
没加完则循环,和在R3和A中
M0VX
修改源地址指针
未转换完则继续
16、内部RAM30H开始的单元中存放着16个0-9的ASCII码(高位字节在前),请将其转换为压缩BCD码(高位在前)并存入外部RAM1000H开始的单元中。
16个ASCII码转换为8个压缩BCD码
A,#0FH
屏蔽高4位得到BCD码
指向下一个ASCII码
A,#OFH;
A,R1;
合成压缩BCD码
DPTR,A;
存压缩BCD码
17、设有两个长度为16字节的数组,分别存放在外部RAM0200H和0300H为首址的存储区域中,试编写程序求其对应项之和(不考虑溢出的情况),结果存放在以0400H为首址的外部RAM中。
RO,#37H
Rl,#47H
@RO,A
DEC
若仅写对少量指令,可酌情给1-3
分;
若仅有少量指令写错,
可酌情扣1-3分。
21、若外部RAM的(3000H)=X,
(3001H)二Y,编程实现Z=X*X+2Y,并将结果存到片内RAM的40H单
元(设Z<
256)o
X
3000H
Y
3001H
Z
40H
DPTR,#X
:
变量X的地址送DPTR
取变量X
B,A
变量X的值送给B寄存器
MUL
AB
求X*X,根据题意知积为1字节(在A中)
RO,A
X*X的结果存入R0中
指向变量Y
取变量Y
B,#2
求2*Y,根据题意知积为1字节(在A中)
求X*X+2*Y
Z,A
和存入4011单元
停机
不要求写出程序的注释和使用伪指令。
程序设计思路正确可得5分,指令完全写对可得
MOV51H,A;
存低8位结果
MOV50H,R3;
存高8位结果
19、有一个长度为16字节的ASCII码字符串存放在外部RAM1000H为首址的存储区域中,字符串中的每一个字符均不相同,试编写程序查找字符串中是否存在ASCII码"
9”。
如果在字符串中存在ASCII码“9”,则将其存储单元的地址存放到内部RAM30H和31H单元中(高8位地址在30H单元中),同时将0V标志位清零。
否则,将30H和31H单元的内容清零,并将0V标志位置“1”。
SP,#60H
DPTR,#1000H
A,©
CJNE
A,#39H,EXIT
30H,DPH
31H,DPL
OV
EXIT:
30H,#0
31H,#0
SETB
20、有两个8字节的16进制数a和b,它们分别存放在内部RAM中30H
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 编程 题库 答案 docx