【汇编语言】 常量

汇编语言 常量

在这里插入图片描述

一、常量的定义

  • 在汇编阶段就可以确定,直接编码于指令代码中
  • 不是保存在存储器中可变的变量

二、常量的表达形式

常量 (Cons ant) 是程序中使用的一个确定数值,在汇编语言中有多种表达形式
在这里插入图片描述

(1)常数

常数是指由十进制、十六进制和二进制形式表达的数值

进制数字组成举例
十进制由0-9 数字组成,以字母D或d结尾(默认情况下可以省略)100, 255D
十六进制由0-9 A-F 组成,以字母H或h结尾以字母 A-F 开头前面要用0表达,以避免与标识符混淆64H, 0FFH 08800H
二进制由0、1 两个数字组成,以字母B或b结尾01 101100B
  • 十、十六和二进制形式表达的数值 以后缀字母(D、H和B)区分,十进制数可以不加

  • 以字母A~F开头的十六进制常数,要加前导0 以便区别于以字母开头的标识符

    “AH”是指寄存器
    “0AH”表示十六进制常数(即十进制常数10)

(2)字符和字符串

字符或字符串常最是用英文缩略号(形态上很像单引号,一般也就称为单引号)或双引号括起来的单个字符或多个字符,其数值是每个字符对应的 ASCII 码值

  • 单引号、双引号没有区别
  • 字符和字符串也没有本质上的区别

(3)符号常量

符号常量使用标识符表达一个数值 常量若使用有意义的符号名来表示,可以提高程序的可读性 同时更具有通用性 程序中可以多次使用符号常量,但修改时只需改变一处

  • 定义格式

     符号名= 数值表达式
    
     符号名 equ  数值表达式
    
     符号名 equ <字符串>
    

(4)数值表达式

数值表达式是指用运算符 (MASM 中统称为操作符,Operator) 连接各种常量所构成的算式

  • 用运算符连接各种常量构成的算式

    • 主要应用算术运算符:
      +(加)、-(减)、*(乘)、/(除)和 MOD( 取余数)
  • 数值用作地址,数值表达式成为地址表达式

    • 地址表达式只能使用加减
    • 指示地址移动常量表示的若干个字节存储单元
    • 地址+常量 地址-常量

三、对常量的理解

  • 1.不同进制和形式表达了同一个数值:无论源程序如何表达,计算机内部都是二进制编码

    • 汇编语句:
      const1 byte 100,100d,01100100b,64h, 'd'
      
    • 二进制代码:
      00000000 64 64 64 64 64
      
  • 2.常量只是一个符号,并不占用主存空间,应用时可以将其代表的内容替代

    • 汇编语句:
      minint = 10
      maxint equ 0ffh
      const5 byte minint,minint+5
      	   byte maxint-5,maxint-minint
      
    • 二进制代码:
      = 0000000A
      = 000000FF
      0000002A 0A 0F FA F5
      

    符号MININT为10,MAXINT为255,不占主存空间 表达式定义CONST5的每个参数,实质还是常量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

BkbK-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值