- 1、本文档共56页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编语言程序设计基本方法
汇编语言程序设计基本方法
汇编语言基本概念汇编语言与机器语言
编语言与机器语言
汇编语言是用意义明确的助记符来表示指令的操作码、操作数。汇编语言是面向机器的语言,不同的机器有不同的汇编语言。用汇编语言编写的程序具有执行速度快、占用存储空间小、实时性能好等待点。汇编语言放大量用于编写计算机系统程序、实时控制程序等。
用汇编语言编写的程序称为汇编语言源程序(简称汇编语言程序)。计算机必须将汇
编语言程序翻译成由机器代码组成的目标程序才能执行。这个翻译过程称为汇编。自动
完成汇编过程的软件叫汇编程序。
汇编语言的语句有两种基本类型:指令与伪指令。
编语言中语句的组成
名称 空格
: 操作助记符 空格 操作数 ; 注释 例如:
CYCLE: ADD AX ,02;(AX)((AX)+02
DATA1 DB 20H,30H,40H,50H
名称
1)组成名字的字符
(1)字母A—Z
(2)数字0一9;
(3)专用字符?、. 、@、_、$
2)组成名称的规则
(1)除数字0一9外所有字符都可以放在名字的第一个位置。
(2)使用字符“.“时必须放在名字的第一个位置。
(3)名字最多可以使用31个字符、汇编程序不能识别多余的字符。
3)以冒号分割时,名称是一个标号;以空格分割时,名城既可以使标号,也可以是变量。
操作助记符(助记符)
操作助记符将指出该语句的基本操作功能。必须存在。
操作符可以是指令、伪指令或宏指令的助记符。
操作数
操作数可以表示数字本身,也可以是指出如何获得操作数的信息。操作数不是必需的,操作数多于两个时,中间用逗号分割,操作数与操作助记符之间必须用空格分割。
注释
近用作语句或程序的说明,不产生目标代码。
汇编语言中的常数与表达式
常数
B:表示二进制数
D:表示十进制数 179D或179
O:表示八进制数 263O
H:表示十六进制数 B3H
用单引号“‘”括起来的一串字符称为字符串常量
表达式
表达式由操作数和操作符组成
操作数可以是常数或标识符、表达式
操作符:算术操作符、关系操作符、属性操作符及其它操作符等
算术操作符:+、-、*、/、MOD,双操作数操作符,操作数必须为数字操作数,MOD的两个操作数必须都为正整数。
例如:
MOD 16
0B5H MOD 10H
逻辑操作符:AND(与)、OR(或)、NOT(非)、XOR(异或)。操作数必须为两个数字,按位运算。
例如:
AND 结果
OR 结果
NOT 结果
XOR 结果
注意:逻辑操作符同时也是逻辑运算指令的操作助记符。
例如:
AND AL,0CH OR 0FH
关系操作符:EQ(相等)、NE(不等)、LT(小于)、GT(大于)、LE(不大于)、GE(不小于);关系运算的操作数必须为数字,当关系成立时,其结果为全1;当关系不成立时,其结果为全0。
汇编语言中表达式不能单独构成语句,只能是语句的一部分。
例如:
MOV AX,BUF+2
ADD AL,VAL AND 0FH
JMP AGAIN+3
MOV BL,VB LE VA
标号、变量及伪指令
标号
标号是由标识符表示的指令的名称,指示对应指令的位置(地址)。
标号的三个属性:段地址、偏移地址和类型。标号的类型属性:NEAR和FAR;
NEAR:段内使用;FAR:段间使用
标号定义的基本方法:指令的助记符前加上标识符和冒号,例如:
START:PUSH DS
变量
变量的定义
变量通过伪指令定义:
变量名 DB 表达式;定义字节变量
变量名 DW 表达式;定义字变量
变量名 DD 表达式;定义双字变量
变量名 DQ 表达式;定义长字变量
变量名 DT 表达式;定义一个十字节变量
变量名是一个标识符,变量的类型与关键字DB、DW、DD、DQ、DT有关。
表达式的表示:
一个或多个常数或表达式
带引号的字符串
一个问号“?”
重复方式 重复次数 DUP(表达式)
例如:
DATA1 DB 20H
DATA2 DW 0204H,1000H
DATA3 DB(-1*3),(15/3)
DATA4 DD 12345H
DATA5 DB ‘0123’
DATA6 DW ‘AB’,‘C’,‘D’
DAT
文档评论(0)