- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
单片机实验-伟福Lab2000P汇编语言源程序
伟福.Lab2000P单片机仿真实验系统
MCS51汇编语言程序
; 软件实验一存储器块清零 S1.ASM
Block equ 6000h
0000 906000 mov dptr, #Block ; 起始地址
0003 7800 mov r0, #0 ; 清 256 字节
0005 E4 clr a
Loop:
0006 F0 movx @dptr, a
0007 A3 inc dptr ; 指向下一个地址
0008 D8FC djnz r0, Loop ; 记数减一
000A 02000A
ljmp $
end
; 软件实验二二进制到 BCD码转换 S2.ASM
; 将 A 拆为三个 BCD 码, 并存入
Result 开始的叁个单元
Result equ 20h
org 0
0000 020015 ljmp Start
BinToBCD:
0003 75F064 mov b, #100
0006 84 div ab
0007 F520 mov Result, a ; 除以 100, 得百位数
0009 E5F0 mov a, b
000B 75F00A mov b, #10
000E 84 div ab
000F F521 mov Result+1, a ; 余数除以 10, 得十位数
0011 85F022 mov Result+2, b ; 余数为个位数
0014 22 ret
Start:
0015 758140 mov sp, #40h
0018 747B mov a, #123
001A 1103 call BinToBCD
001C 02001C ljmp $
end
; 软件实验三二进制到ASCII码转换 S3.ASM
; 将 A 拆为二个 ASCII 码, 并存入 Result 开始的二个单元
Result equ 20h
org 0
0000 020026 ljmp Start
ASCIITab:
0003 303132
0006 333435
0009 363738
000C 394142
000F 434445
0012 46 db 0123456789ABCDEF ; 定义数字对应的
ASCII表
BinToHex:
0013 900003 mov dptr, #ASCIITab
0016 F5F0 mov b, a ; 暂存 A
0018 C4 swap a
0019 540F anl a, #0fh ; 取高四位
001B 93 movc a, @a+dptr ; 查
ASCII表
001C F520 mov Result, a
001E E5F0 mov a, b ; 恢复 A
0020 540F anl a, #0fh ; 取低四位
0022 93 movc a, @a+dptr ; 查
ASCII表
0023 F521 mov Result+1, a
0025 22 ret
Start:
0026 758140 mov sp, #40h
0029 741A mov a, #1ah
002B 1113 call BinToHex
002D 02002D ljmp $
end
; 软件实验四内存块移动 S4.ASM
; 移动
3000H -- 4000H, 256 字节
0000 7830 mov r0, #30h
0002 7900 mov r1, #00h
0004 7A40 mov r2, #40h
0006 7B00 mov r3, #00h
0008 7F00 mov r7, #0
Loop:
000A 8883 mov dph, r0
000C 8982 mov dpl, r1
000E E0 movx a, @dptr
000F 8A83 mov dph, r2
0011 8B82 mov dpl, r3
0013 F0 movx @dptr, a
0014 B9FF01 cjne r1, #0ffh, Goon1
0017 08 inc r0
Goon1:
0018 09 inc r1
0019 BBFF01 cjne r3, #0ffh, Goon2
001C 0A inc r2
Goon2:
001D 0B inc r3
001E DFEA djnz r7, Loop
0020 020020 ljmp $
end
;软件实验五程序跳转表 S5.ASM
org 0
0000 02001D ljmp Start
0003 7400 Func0: mov a, #0
0005 22
文档评论(0)