8086数据段汇编语言格式

数据段汇编语言格式


碎碎念:这部分内容是对8086数据段汇编语言格式的总结,网上的资源较少,书上的讲解也过于零散,所以就结合网络资源和课本总结了一下这部分内容。
最近发博客会比较频繁,本周要完成的内容也很多。
不重要的文字:本周第一次通宵改代码,正好那天晚上小鬼在写歌,我与小鬼同在hhh

基本概念

  1. 伪指令:伪指令没有对应的机器码,CPU不能直接执行,需要由汇编程序处理。
  2. 数据定义伪指令为变量申请固定长度的存储空间,并将对应的存储单元初始化。在数据段中标识的助记符都为数据定义伪指令
  3. 在汇编语言程序中,数据通常存放在数据段中,例如
DATA	SEGMENT
AREA1   DB 14H,3BH
AREA2	DB 3 DUP(0)
ARRAY   DW 3100H,01A6H
STRING  DB 'GOOD'
DATA    ENDS
(1)定义语句:SEGMENT,ENDS
	表示段的开始和结束
(2)DATA:段的名称
(3)DB.DW:变量赋值语句,DW表示其后每一个操作数都要占一个字(按大端方式存放),DB表示存放一个字节,DD表示存放双字(4个字节)
(3)14H,3BH:初值表,用逗号分隔的参数,主要由数值常数,表达式或?、DUP组构成。?表示初值不确定(未赋初值),DUP表示重复初值
== 重复次数 DUP(重复参数)==

经过汇编后,DATA表示一个具体的段地址,其余各变量为偏移地址值,如图为其在内存中的存放方式
在这里插入图片描述

  • 细节解释
    指令MOV DX,OFFEST ARRAY
    OFFSET为属性操作符,表示将ARRAY的值赋给DX,而不是ARRAY所指的值。按指针理解的话,如果没有OFFSET则表示将*ARRAY赋值给DX

练习

DATA	SEGMENT
A1 DB 3 DUP(?)
A2 DB 1 DUP(2 DUP(0),2)
A3 EQU 64H
A4 DW A3
A5 DW A3 DUP(0)
A6 DW A2
A7 EQU $-A2
ENDS

在这里插入图片描述

结语:目前我看到的就是这些,如果遇到新的伪指令会继续补充进来。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值