- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机第五章作业答案
试编制一个子程序将字符串‘MCS-51 Microcomputer’装入外部RAM8000H开始的显示缓冲区。
ORG 0000H
AJMP 0030H
MIAN: MOV DPTR, #8000H
MOV R1, #0
MOV R0, #20
LOOP: MOV A, R1
ADD A, #5
MOVC A, @A+PC
MOVX @DPTR, A ;1B
INC DPTR ;1B
INC R1 ;1B
DJNZ R0, LOOP ;3B
TAB: DB ‘M’,’C’,’S’,’-‘,’5’,’1’,’ ‘,’M’,’i’,’c’,’r’,’o’
DB ‘c’,’o’,’m’,’p’,’u’,’t’,’e’,’r’
END
试设计一个n字节的无符号十进制数加法子程序,其功能为将(R0)和(R1)指出的内部RAM中两个n字节压缩BCD码无符号十进制数相加,结果存放于被加数单元中。子程序入口时,R0,R1分别指向被加数和加数的低位字节,字节数n存于R2,出口时R0指向和的最高位字节,CY为进位位。
LEN EQU 30
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV SP. #60H
MOV R2, #LEN
ACALL ADD_NBYTE
SJMP $
ADD_NBYTE: CLR C
LOOP: MOV A, @R0
ADDC A, @R1
DA A
MOV @R0, A
INC R0
INC R1
DJNZ R2, LOOP
RET
END
试设计一个程序,其功能为判断(R2R3R4R5)中压缩BCD码十进制最高位是否为零,若最高位为0,且该十进制数不为0,则通过左移使最高位不为0。
ORG 0000H
AJMP MAIN
ORG 0030H
MAIN: MOV A, R2
ANL A, #80H
JNZ NEXT
CLR C
LOOP: MOV A, R5
RLC A
MOV R5, A
MOV A, R4
RLC A
MOV R4, A
MOV A, R3
RLC A
MOV R3, A
MOV A, R2
RLC A
MOV R2, A
ANL A, #80H
JZ LOOP
NEXT: SJMP $
END
试设计一个双字节无符号整数乘法子程序,其功能为将(R3R2)和(R5R4)相乘,积存放于30H~33H。
MULTB: MOV R7, #04 ;结果单元清0
LOOP : MOV @R0,#00H
DJNZ R7,LOOP
MOV A, R2 ;取被乘数低位字节
MOV B, R4 ;取乘数低位字节R4
MUL AB ;R4×R2
ACALL RADD ;调用乘积相加子程序
MOV A, R2 ;取被乘数低位字节 R2
MOV B, R5 ;取乘数高位字节R5
MUL AB ;R5×R2
DEC R0 ;积字节指针减1
ACALL RADD ;调用乘积相加子程序
MOV A,R4
MOV B,R3
MUL AB ;R4×R3
DEC R0
DEC R0
ACALL RADD
MOV A,R5
MOV B,R3
MUL AB ;R5×R3
DEC R0
ACALL RADD
DEC R0
RET
RADD:ADD A,@R0 ;累加子程序
MOV @R0,A
MOV A,B
文档评论(0)