MASM入门(二)MASM基本语法

1.变量和标号

1.1标识符

以字母和特殊字符(_, $, ?, @)开头的字母数字和特殊符号串

1.2保留字

具有特定用途的标识符,用户不能改变其含义

1.3变量

1.3.1四种属性

  • 偏移量 是相对于段起始地址(0)的字节距离
  • 类型 有字节(BYTE)、字(WORD)和双字(DWORD)等基本类型,还有结构(struct)等复合类型
  • 段地址 是在程序装入给定的基址
  • 为实际表示的
    内容,可以改变

1.3.2定义

  • [变量名] DB/DW/DD 表达式

      例:
      msg DB "How are you?",0 ;//共13个字节,DB表示以byte类型(1个字节)定义变量
      
      magic DB 50 dup('1','2','3')   
      		DB '1','2','3'; 共占53字节,并初始化为字符串"123123…";50表示容量;dup重复数据  
      
      DATA7  DB ?  ; 占1字节;‘?’,表示该变量的值不确定,即:该变量所表示的内存单元中的内容是不确定的,或者说是,当表达式为问号时,变量所对应的内存区中并没有存入新的值,而只是预留出了相应的存储空间;
      
      num dw 1,2,3,4,5,6,7,8,9,10 ;共20字节
                                  ;相当于C风格的 WORD num[10]={1,2,3,4,5,6,7,8,9,10};
    

1.4标号

1.4.1属性

  • 段地址 是指该标号所对应的指令所在段的段地址
  • 偏移地址 段内偏移地址
  • 类型有两种:NEAR和FAR
    • NEAR 类型,表示该标号在段内使用
    • FAR 类型则表示该标号可以在段间使用

1.4.2定义:在指令码前面加上标识符和冒号":";

例如 :START: PUSH DS

2.常量

2.1伪指令EQU

PI EQU 31415926 ; 类似C语言#define PI 31415926

2.2伪指令 name = expression

PIX = PI+2 //编译器在预处理阶段将出现name换成expression

2.3伪指令ORG

规定程序的起始地址
默认从0000H开始
ORG 2000H;规定程序指令从地址2000H开始存放

2.4数制

二进制: 11101011B
八进制: 345Q
十进制: 8097D, 8097
十六进制: 1234H, 0EFDAH

  • 9
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值