- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机硬件技术基础大纲_03
汇编语言程序设计§1 汇编语言初步汇编过程及工具编辑?汇编?连接?运行调试程序DEBUG宏汇编基本语法汇编源程序结构程序={块1[数据段、堆栈段、代码段(过程1?)],块2?}过程={指示性语句,指令性语句}指示性语句格式: [名字] 伪指令 [操作数] [;注释]指令性语句格式: [标号:] [前缀]指令助记符 [操作数] [;注释]例子DATA SEGMENTSUM DB ?DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATAPORT EQU 3MAIN PROCGO: MOV AX,DATA MOV DS,AX MOV SUM,0CYCLE: CMP SUM,100 JNA NODONE MOV AL,SUM OUT PORT,AL MOV AH,4CH INT 21H ;返回DOS NODONE:IN AL,PORT ADD SUM,AL JMP CYCLEMAIN ENDPCODE ENDS END GO §2 指示性语句符号赋值定义EQU 格式: 符号名 EQU 表达式 表达式----值或符号(段前缀、操作数、变址引用、指令名等) 例: CONST EQU 256 DATA EQU ARRAY AB EQU DS:[BP+8] M EQU MOV2.= 格式: 符号名 = 数值 定义常数,且可以重复定义,重新定义后,原来的定义自动作废。 例: A=12H B=256数据定义 格式: [变量名] 数据定义伪操作 表达式 数据定义伪操作: DB、DW、DD 表达式: 数值表达式、ASCII表达式、地址表达式 例1:A DB 10*20 STR1 DW ‘THAT IS ALL!’,0DH,0AH,’$’ DATA1 DW 10 DUP(?) SUM DW ? TABLE DB 10 DUP(4 DUP(3),7) DBPTR DD TABLE 例2: AX 的内容为多少? X DB ‘AB’ Y DW ‘AB’ MOV AX,‘AB’ ;(AX)=4142H LEA BX,X MOV AX,[BX] ;(AX)=4241H LEA BX,Y MOV AX,[BX] ;(AX)=4142H例3: 数组累加和 XY DW … MOV AX,XY MOV DX,0 MOV BX,0 K1: ADD BX,2 ADD AX,XY[BX] ADC DX,0 CMP BX,38 JNE K1段、过程、模块定义段定义段名 SEGMENT ??段名 ENDS过程定义过程名 PROC ??过程名 ENDP模块定义NAME 模块名??END [标号]或者 TITLE 模块名若没有任何标名,则以原文件名为模块名。ASSUME格式: ASSUME CS:段名,DS:段名[,SS:段名,ES:段名]ORGORG 表达式汇编程序从该表达式的值为开始地址为代码段分配存储空间。 运算符 SEG X ;取段址 OFFSET X ;取偏址 PTR ;定类型运算符优先权(由高到低) 1. [ ],结构变量域,LENGTH,SIZE,WIDTH,MASK段前缀的名:PTR,OFFSET,SEG,TYPE,THIS,段前缀HIGH,LOW*,/,MOD,SHL,SHR+,-关系运算符 EQ,NE,LT,LE,GT,GE逻辑运算 NOT,AND,OR,XORSHORT§3 汇编语言程序设计概述判断程序质量的标准程序正确、完整程序易读(注释,说明)程序执行时间程序所占空间及行数程序流程规定常见流程顺序 分支 循环 子程序模块§4 键盘输入与数据显示键盘输入键盘DOS操作AH 功 能入口参数出口参数1键入一字符,并回显,遇∧Break则结束(AL)=字符7键入一字符,不回显(AL)=字符8键入一字符,不回显,遇∧Break则结束(AL)=字符A键入字符串到缓冲区 (DS:DX)=缓冲区首址单字符输入例: 遇回车,则继续执行,否则等待 LP1: MOV AH,7 INT
文档评论(0)