- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
第五章汇编语言程序设计;5-1 汇编程序约定;源程序使用机器汇编要考虑汇编程序的约定;汇编的主要任务:;二.汇编控制指令(伪指令)
常用伪指令及其功能:;5.EQU—等值。为标号或标识符赋值。
X1 EQU2000H
X2 EQU0FH
…
MAIN: MOVDPTR,#X1
ADDA,#X2;6.DATA—数据地址赋值。
X1 DATA1020H+2000H
EQU定义的字符必须先定义后使用,而DATA伪指令没有这种限制。
;5-2汇编语言程序设计步骤;例5-3-4压缩式BCD码分解成为单字节BCD码。;行李计价: 当G≤5,M=G×3;
当G>5,M=G×3+(G-5)×(5-3);5-4-3 多重分支程序
一.多次使用条件转移指令,形成两个以上判断框。;二.按分支号转移;(2)转移表法。用分支转移指令JMP@A+DPTR。设R7R6=分支号;5-5 循环程序
包含多次重复执行的程序段,循环结构使程序紧凑。;5-5-2 单重循环
简单循环结构:循环体中不套循环。;循环控制方法:计数控制、特征标志控制。;二.特征控制:设定循环结束标志实现循环控制。; 5-5-3 多重循环
循环体中套循环结构。以双重循环使用较多。;;图4-4-4求符号函数流程图
常用程序结构:
直线程序、分支程序、循环程序、子程序
MOV@R0,#0
t=(1×1+1×100+2×100×255+2×100+2×1)×M=51.
习题1编写多字节减法子程序,Z=X-Y。
例:为一串7位ASCII码数据的D7位加上奇校验,设数据存放在片外RAM的2101H起始单元,数据长度在2100H单元。
相加计算多字节乘法程序,步骤:
循环重复前3步,直至取够相应位数的商。
R3←R3—1=0?
DB—定义字节型常数指令。
用分支转移指令JMP@A+DPTR。
4)提供目标执行文件(*.
DB—定义字节型常数指令。
手工汇编:人工查指令表汇编。
(三)BCD码与二进制数之间的转换
有乘法和除法两种转换方式。; 5-6子程序
子程序:能完成某项特定功能的独立程序段,可被反复调用。;5-6-2子程序的类型
按子程序与主程序之间传递参数的方式分类。;例:将R4R5R6中三个字节数据对半分解,变成6个字节,存入显示缓冲区(DISMEM0~DISMEM5)。;例:查表求出数据的ASCII码,再以字符形式输出。; 5-7算术运算程序
5-7-1 多字节加减运算程序;5-7-2 多字节无符号数乘除运算;相减计算多字节除法程序,步骤:
1.对齐高位被除数试减除数。
2.若够减商上1,不够减商上0且恢复余数。
3.余数左移或除数右移对位。
4.循环重复前3步,直至取够相应位数的商。;5-7-3代码转换程序
(一)十六进制数转换为ASCII码;(三)BCD码与二进制数之间的转换
有乘法和除法两种转换方式。;2.二进制数转换为BCD码
B=bn-1×2n-1+bn-2×2n-2+…+b1×21+b0×20
=(((bn-1×2+bn-2)×2+bn-3)×2+…b1)+b0
原创力文档


文档评论(0)