汇编语言复习笔记之汇编语言基本格式

本文介绍了汇编语言的基本格式,包括使用EQU和=进行符号定义,详述了算术、逻辑、关系运算符的用法,并探讨了SEG、OFFSET、TYPE等数值返回运算符的功能。此外,还讲解了伪指令ORG的作用以及如何利用$指示当前位置计数器。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

汇编语言基本格式

一、符号定义语句

1、等值语句 EQU

格式:符号 EQU 表达式或内容表述(同一符号不能重新定义)
功能:把表达式的值或表达式赋给EQU左边的符号
例子
COUNT EQU 5
PL EQU ADD(后面出现的PL相当于ADD指令)
ADR1 EQU DS:[BP]
WO EQU WORD PTR DA_BYTE
(错误例子)
PL EQU ADD
PL EQU ADC
(同一符号不能重新定义)

2、等号语句 =

格式:符号 = 表达式(=右边必须为表达式)
功能:与EQU相同,但可重新定义
例子
COUNT = 5
COUNT = 3*2

二、表达式与运算符

1、算术运算符

+、-、*、/、mod、SHR、SHL、[ ](下标)等

2、逻辑运算符

AND、OR、XOR、NOT等

3、关系运算符

EQ、NE,LT、LE、GT、GE
结果真则值为全1,否则为全0

4、数值返回运算符

(1)SEG运算符

功能:得到变量或标号所在段的段基址
MOV AX ,SEG K1
若K1段基址为0915H,则AX = 0915H

(2)OFFSET运算符

功能:得到变量或标号的段内偏移量
MOV SI,OFFSET DA1
若DA1偏移量为10H,则SI = 10H

(3)TYPE运算符

功能:得到变量或标号类型代码(变量类型代码为其字节数,标号类型代码没有物理意义),如下表

在这里插入图片描述
例子:
V1 DB ‘ABC’
MOV AL,TYPE V1
(AL = 01H)

(4)LENGTH运算符

功能:用于变量,若变量用dup说明,返回dup外层值,没有用dup返回1
例子
K1 DB 10H,20H,30H
K2 DB 10H DUP(0)
K3 DW 20H DUP(0,1,2,DUP(2))
MOV AL,LENGTH K1
MOV BL,LENGTH K2
MOV CL,LENGTH K3
(AL = 1)(BL = 10H)(CL = 20H)

(5)SIZE运算符

功能:用于变量,等于LENGTH和TYPE两个运算符值的积
例子(上例)
MOV AL,SIZE K1
MOV BL,SIZE K2
MOV CL,SIZE K3
(AL = 1)(BL = 10H)(CL = 40H)

5、属性修改运算符

功能:用于对变量,标号或存贮器操作数的类型进行修改

(1)PTR运算符

格式:类型 PTR 地址表达式
功能:用于指定PTR后面存储器操作数的类型(这种修改是临时性的,仅在该语句内有效)
例子:
DA_BYTE DB 20H DUP(0)
DA_WORD DW 30H DUP(0)
MOV AX, WORD PTR DA_BYTE[10](AX类型为字,修改DA_BYTE类型为字)
ADD BYTE PTR DA_WORD[20],BL(修改DA_WORD为字节,与BL统一)
INC BYTE/WORD PTR [BX](确定是BX存储地址中的一个字还是字节加一)

(2)This运算符

功能:把运算符后面指定的类型属性赋给当前的存储单元,而段和偏移属性不变
例子
DA_BYTE EQU This BYTE
DA_WORD DW 20H DUP(0)

6、运算符的优先级

在这里插入图片描述

三、定义伪指令和当前位置计数器

1、$

功能:用于记载当前偏移量,即当前位置计数器

2、ORG

格式:ORG 表达式
功能:表达式的值为一偏移量,表示把此偏移量送当前位置计数器,即ORG后面的数据或指令从当前给定偏移量开始
例:

DATA SEGMENT
	ORG 30H
	DB1 DB 12H,34H    (当前位置30H)
	ORG $+20H
	STRING DB 'ABCDEFGHI'    (当前位置52H)
	COUNT EQU $-STRING     (COUNT表示STRING字节数)
DATA ENDS
	.
	.
	.
CODE SEGMENT
	ASSUME CS:CODE
	ORG 10H
START:MOV AX,DATA    (起始于10H)
CODE ENDS
START END
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

沐川҉ ღ

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

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

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

打赏作者

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

抵扣说明:

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

余额充值