- 1、本文档共38页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微机原理和接口技术(第三章-6)
五、 汇编语言程序设计
讲课内容
一、概述
1. 编写汇编语言程序步骤
2. 判断程序质量的标准
3. 几种程序结构
二、汇编语言程序设计举例
例1 将寄存器BX中的内容以十六进制形式显示出来。
例2 将键盘输入的十进制数据串转换成其相应大小的数值
存放在BX寄存器中。;一、概述
1. 编写汇编语言程序步骤
2. 判断程序质量的标准
3. 几种程序结构;一. 编写汇编语言程序步骤
分析实际问题,抽象描述问题的模型
确定解决模型的算法
按算法画出程序流程图
按流程图编写程序
上机调试, 运行程序;2. 判断程序质量的标准
程序的正确性
程序的可读性
程序的执行时间
程序所占内存大小
;3.几种程序结构
顺序结构
分支结构
循环结构
子程结构
;顺序结构;例:P156内存中自TABLESQ开始的16个单元连续存放着自然数0到15的平方值,任给一 数x(0≤x≤15)在XY单元中,查表求出X的平方值,将结果存入YY单元中。;例3:符号函数的处理
有一符号函数:
Y=
;例:某工厂有8种产品的加工程序RO到R7分别存放在SRRO,SBRI, …,SBR7为首地址 的内存区域中,这8个首地址的偏移量连续存放在B以BASE为首地址的跳转表内,如图:
;两个分支;三个分支;循环结构;1.多处调用完成同一功能的子程:
code SEGMENT
start: 、、
CALL sub
、、
CALL sub
、、
CALL sub
、、
MOV AH, 4CH
INT 21H
sub PROC
、、
、、
RET
sub ENDP
code ENDS
END start;思考如下程序的执行流程:
code SEGMENT
start: 、、
CALL sub
、、
CALL sub
、、
; MOV AH, 4CH
; INT 21H
sub PROC
、、
、、
RET
sub ENDP
MOV AH, 4CH
INT 21H
code ENDS
END start;二、汇编语言程序设计举例
例1 将寄存器BX中的内容以十六进制形式显示出来。
(二进制 十六进制)
例2 将键盘输入的十进制数据串转换成其相应大小的数值
存放在BX寄存器中。;有关字符、数码转换的处理
1. 计算机处理字符时,常用的字符编码是ASCII 码。
2. 数字和字母的ASCII码是一个有序序列
数字0~9 : 30H ~ 39H
大写字母A~Z : 41H ~ 5AH
小写字母a~z : 61H ~ 7AH
;3.计算机处理信息时,其对象都是二进制数。
外设(显示器、打印机、键盘等) 用ASCII码与CPU进行信息传送。
例如: 1) 在键盘上按下某一字符键 (如’9’),键盘接口向
键盘缓冲区送去的是该字符的ASCII码(如39H),
不是送数字09H。
2) 在文本方式下,要在显示器上显示某一字符(如’A’),
须将该字符的ASCII码(如41H)送显示缓冲区,
不是送数字0AH。;例 将CPU运算的结果通过显示器显示时,如二进制数“A9”
需将结果转换成其对应的ASCII码才能进行显示。;例 CPU要处理从键盘输入的某一数据,如键入“1234”
需将该数据串进行转换十六进制后才能应用。;例1 将BX寄存器中的内容以十六进制形式显示出来。;算法:
取出要显示的某4位,转换为对应的ASCII码,
再调用DOS系统功能进行显示。;code SEGMENT
ASSUME CS:code
start: MOV CH, 4 ;字符个数
MOV CL, 4 ;循环移位次数
next: ROL BX, CL ;取显示位的值
MOV DL, BL
文档评论(0)