微型计算机原理及应用47.ppt

  1. 1、本文档共128页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
微型计算机原理及应用;§4.1 汇编语言的格式 §4.2 语句行的构成 §4.3 指示性语句 §4.4 指令语句 §4.5 汇编语言程式设计及举例;4.1 汇编语言的格式;4.1.18086汇编语言程序的一个例子;由上例看出8086汇编的一个语句行由以下4个部分组成: 标号(或名称) 操作码 操作数 ;注释 各部分之间至少要用一个空格作为间隔。IBM宏汇编对于语句行的格式是自由的,但如果写成格式化就便于阅读,建议读者按格式化来写语句行。另外,IBM宏汇编并不要求一个语句只能写一行,一个语句可以有后续行,规定以字符“”作为后续行的标志。 ;4.1.2 8086汇编语言源程序的格式;每一个段有一个名称,以符号SEGMENT作为段的开始,以语句ENDS作为段的结束。这两者都必须有名称,而且名称必须相同。 由若干个段组成一个源程序,整个源程序以语句END作为结束。 总之,8086的源程序是由若干段组成???,而一个段又是由若干个语句行组成的。所以,语句行是汇编语言源程序的基础。 ;4.2 语句行的构成;4.2.1 标记 ;非打印字符有: 空格、制表符(TAB键)、回车和换行。 若在源程序中包含任何不属于上列字符集中的字符,则汇编程序就把它们作为空格处理。虽然字符“”是字符集中的一个字符,但紧跟在回车换行之后的符号“”是代表一个连续行,所以,汇编程序也把它当做空格处理。 2. 界符(Delimiters) 界符是一些特殊字符,利用它们可以表明某个标记的结束,它们本身也有一定的意义,这一点就与分隔符(空格)不同。例子中的冒号(:)、逗号(,)都是一种界符。IBM宏汇编中的界符集如图4-2所示。 IBM宏汇编中的界符集语句中有了界符就可以不再用分隔符,但为了程序更清晰可读,有时仍用分隔符。 ;3.常量(Constants) 凡是出现在8086源程序中的固定值(它在程序运行期间不会变化),就称为常量。例子中的数0、3、100等都是常量,而且是数字常量。 IBM宏汇编中允许的常量为: (1) 数字(整数)常量 ① 二进制常量 以字母B结尾的由一串“0”和“1”组成的序列。例如。 ② 十进制常量 由若干个0~9的数字组成的序列,可以以字母D作结尾,或没有任何字母作结尾。例如,1234D或1234。;③八进制常量 以字母Q(或字母O)结尾,由若干个0~7的数字组成的序列。例如255Q,377Q等。 ④ 十六进制常量 以字母H结尾,由若干个0~9的数字或A~F的字母所组成的序列。 为了避免与标识符相混淆,十六进制数在语句中必须以数字打头。所以,凡是以字母A~F开始的十六进制数,必须在前面加上数字0。例如56H,0BA3FH等。;(2) 字符串常量 字符串常量是由包含在单引号内的1至2个ASCII字符构成的。汇编程序把它们表示成一个字节序列,一个字节对应一个字符,把引号中的字符翻译成它的ASCII码值。例如字符“A”等价于 41H,字符“AB”等价于4142H。在可以使用单字节立即数的地方,就可以使用单个字符组成的字符串常量;在可以使用字立即数的地方,就可以使用两个字符组成的字符串常量。 只有在初始化存储器时才可以使用多于两个字符的字符串常量。 ;4.标识符(Identifiers) 标识符是由程序员自由建立起来的、有特定意义的字符序列,如例子中的SUM、CYCLE和PORT_VAL等等。 一个标识符是由最多为31个字母、数字及规定的特殊字符(? @ _ $)等组成的,而且不能用数字打头(以免与十六进制数相混淆)。 5. 保留字(Reserved words) 保留字看上去像标识符,但是它们在语言中有特殊的意义,而且不能用它们作为标识符。如例子中的SEGMENT、MOV、EQU、AL等都是保留字。实际上凡是8086的指令助记符,汇编语言中的命令(伪指令),寄存器名等都是保留字。 ;6.注释(Comment) 为了使汇编语言的源程序更便于阅读和理解,常在源程序中加上注释。注释是在分号(;)后面的任意的字符序列,直到行的结尾。在汇编时,汇编程序对它们并不进行处理。在可打印的文件中,注释和源程序一起打印。;4.2.2 符号;1.寄存器(Registers) 8086的寄存器常在操作数场出现,代表某一个操作数。每个寄存器都有一种类型特性,由这些类型可以确定它是一个字节寄存器还是一个字寄存器。8086的标志位被看作是一位寄存器。 2.变量(Variable) 存放在存储单元中的操作数是变量,因为它们的值是可以改变的。在程序中出现的是存储单元地址的符号,即它们的名称。;所有的变量都具有三种属性: (1) 段值(SEGMENT),即变量单元所在段的段地址(段的起始地址)的高16位,低4位始终为0; (2) 偏

文档评论(0)

tcpe + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档