- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ch03 汇编程序设计
;编制汇编语言程序的步骤:;分支结构 子程序结构;按照指令执行的顺序,程序的结构可以划分成以下三种。
顺序结构:程序按照它编写的顺序执行,每条指令只执行一 次,这样的程序称为“顺序结构”的程序。
循环结构:一组指令被反复地执行,这样的程序称为“循环结 构”或者“重复结构”的程序。
选择结构:根据某个条件,一部分指令被执行,另一部分指 令没有被执行,这样的程序称为“选择结构”或者 “分支结构”的程序。
;3.1 顺序程序设计;例 数据段;例 代码段;例 代码段(续);【例 3?1】将16进制数字转换为对应七段码;DSEG SEGMENT
LEDTB DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H
DB 80H,90H,88H,83H,0C6H,0C1H,86H,8EH
XDATA DB 9 ; 要显示的16进制数字
XCODE DB ? ; 存放要显示数字对应的七段码
DSEG ENDS
CSEG SEGMENT
ASSUME CS: CSEG, DS:DSEG
START :MOV AX, DSEG
MOV DS, AX
MOV BX, OFFSET LEDtb
MOV AL, XDATA ; 取16进制数字
AND AL, 0FH
XLAT ; 查表取得对应的七段码
MOV XCODE, AL ; 保存
MOV AX, 4C00H
INT 21H
CSEG ENDS
END START;3.2 分支程序设计;3.2.1 单分支结构 ;计算AL中有符号数的绝对值;3.2.2 双分支结构;显示BX的最高位;显示BX的最高位(另解1);显示BX的最高位(另解2);显示BX的最高位(无分支);大小写字母转换;大小写字母的比较和转换;[例3-4] 将4位二进制转换成对应的十六进制字符 ;3.2.3 多分支结构;;;DATA SEGMENT
PROMPT DB 0DH, 0AH, “Input a number (1~3): $”
MSG1 DB 0DH, 0AH, “FUNCTION 1 EXECUTED . $”
MSG2 DB 0DH, 0AH, “FUNCTION 2 EXECUTED . $”
MSG3 DB 0DH, 0AH, “FUNCTION 3 EXECUTED . $”
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA
START: MOV AX, DATA
MOV DS, AX;INPUT: LEA DX, PROMPT
MOV AH, 9
INT 21H ;输出提示信息
MOV AH, 1
INT 21H ;输入一个数字
CMP AL, ‘1’
JB INPUT ;“0”或非数字,重新输入
JE F1 ;数字“1”,转F1
CMP AL, ‘2’
JE F2 ;数字“2”,转F2
CMP AL, ‘3’
JE F3 ;数字“3”,转F3
JMP INPUT ;大于“3”,重新输入;F1: LEA DX, MSG1 ;F1程序块
JMP OUTPUT
F2: LEA DX, MSG2 ;F2程序块
JMP OUTPUT
F3: LEA DX, MSG3 ;F3程序块
JMP OUTPUT
OUTPUT:
MOV AH, 9
INT 21H
MOV AX, 4C00H
INT 21H
CODE ENDS
END START ;DATA SEGMENT
PROMPT DB 0DH, 0AH, “Input a number (1~3): $”
MSG1 DB 0DH, 0AH, “FUNCTION 1 EXECUTED . $”
MSG2 DB 0DH, 0AH, “FUNCTION 2 EXECUTED . $”
MSG3 DB 0DH, 0AH, “FUNCTION 3 EXECUTED . $”
ADDTBL DW F1, F2, F3
DATA ENDS
CODE SEGMENT
ASSUME CS: CODE, DS: DATA;START:MOV AX, DATA
MOV DS, AX
INPUT:LEA DX, PROMPT
MOV AH, 9
INT 21H ;显示提示信息
MOV AH, 1
INT 21H ;输入一
文档评论(0)