码迷,mamicode.com
首页 > 编程语言 > 详细

汇编语言从入门到精通-4标识符和表达式

时间:2018-10-05 12:11:11      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:alt   nbsp   程序设计   出错   name   add   100%   数字   定义数据   

标识符和表达式

  标识符和表达式是程序设计经常用到的两个基本概念。在用高级语言进行程序设计时,如果程序要对某个变化的量进行处理时,通常都要对该变化量定义一个具有某种数据类型的符号名,用该符号名也就等于使用了该变化量。在汇编语言中,也是如此,所不同的是它们的说明和引用方式不同。

4.1 标识符

在汇编语言中,标号、内存变量名、子程序名和宏名等都是标识符,它一般最多由31字母数字规定的特殊字符(?@_$)等组成,并且不能用数字开头。通常情况下,汇编语言不区分标识符中字母的大小写。

和高级语言的变量名一样,一般要求标识符尽可能取得有点含义,这会大大改善程序的可读性,并有助于对程序的理解。但标识符不能是汇编语言的保留字,汇编语言的保留字主要是指:指令助忆符、伪指令定义符、寄存器名以及一些具有特殊含义的字符串等。

例如:MSG1、ERRMSG2、ASC1、asc2等是合法的标识符,而1a、ah、mov等就不是合法的标识符。

试比较ABCDH和0ABCDH之间的差异。前者是标识符,而后者是十六位进制数值。

4.2 简单内存变量的定义

在编程序时,我们往往要根据程序的需要定义一些内存单元。在高级语言程序中,要给存储单元取一个符号名,然后通过引用该符号名来访问其所对应的存储单元,而在汇编语言程序中要灵活一些,它可以给存储单元取符号名,也可以不取符号名。当给存储单元取符号名时,则可通过该符号名来访问其对应的存储单元;当不给存储单元取符号名时,则可通过存储单元的偏移量(有效地址)来访问它。

汇编语言中,常见的数据类型有字节、字和双字等。下面介绍如何定义各种整型类型的内存变量,有关浮点类型变量的定义方式将在第11章中介绍。

4.2.1 内存变量定义的一般形式

定义数据变量语句是在程序中经常使用的伪指令语句,其一般格式如下:

[变量名]  数据定义符  表达式1[, 表达式2, …, 表达式n]  ;注释

该定义格式的主要解释如下:

技术分享图片

变量名必须是一个合法的标识符,它可以写,也可以不写;
技术分享图片 数据定义符用于确定内存单元的数据类型,常用的定义符有:DBDWDD等;
技术分享图片 表达式是定义内存单元时的初值表达式,一个定义语句可以有多个初值表达式,各表达式之间必须用逗号‘,’分开;如果某个存储单元没有初值表达式,则必须用一个问号‘?’来表示;
技术分享图片 在定义语句的后面可以书写注释内容,也可以不写。

在定义变量时,虽然可以不写变量名,但我们建议还是要写,因为不写变量名,就意味着只能用内存单元的偏移量来访问它。这时,一旦内存单元的偏移量发生变化,那么,程序中的所有引用都要修改,这不仅增加了程序维护的工作量,而且也容易因遗漏修改而出错。

 

汇编语言从入门到精通-4标识符和表达式

标签:alt   nbsp   程序设计   出错   name   add   100%   数字   定义数据   

原文地址:https://www.cnblogs.com/little-kwy/p/9744292.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!