<汇编语言(第2版)>2011032901
dw 定义字型数据 define word
dw是伪指令
与此类似的有
db 定义字节型数据 define byte
dd 定义双字型数据 define double word
dup是一个操作符,在汇编语言中同db、dw、dd等一样,也是由编译器识别处理的符号。它是和db、dw、dd等数据定义伪指令配合使用的,用来进行数据的重复。
db 3 dup (0):定义了3个字节,它们的值都是0,相当于db 0, 0, 0。
db 3 dup (0,1,2);定义了9个字节,它们是0,1,2,0,1,2,0,1,2,相当于:db 0,1,2,0,1,2,0,1,2。
db 3 dup ('abc', 'ABC');定义了18个字节,他们'是abcABCabcABCabcABC',相当于:db 'abcABCabcABCabcABC'。
dup的使用格式如下:
db 重复的次数 dup (重复的字节型数据)。
dw 重复的次数 dup (重复的字型数据)。
dd 重复的次数 dup (重复的双字数据)。
下面看下如下结构
注意:每一个段最大64K,因为8086CPU是16位的
数据和程序的一个简单框架:
assume cs:codesg
codesg segment
数据定义(dw XX)
start:代码
codesg ends
end start
另外一个框架:
assume cs:code ,ds:datas ,ss:stack
datas segment
数据定义
datas ends
stack segment
数据定义
stack ends
code segment
start:代码
code ends
end start
其中end start表示入口在start标记上
dw是伪指令
与此类似的有
db 定义字节型数据 define byte
dd 定义双字型数据 define double word
dup是一个操作符,在汇编语言中同db、dw、dd等一样,也是由编译器识别处理的符号。它是和db、dw、dd等数据定义伪指令配合使用的,用来进行数据的重复。
db 3 dup (0):定义了3个字节,它们的值都是0,相当于db 0, 0, 0。
db 3 dup (0,1,2);定义了9个字节,它们是0,1,2,0,1,2,0,1,2,相当于:db 0,1,2,0,1,2,0,1,2。
db 3 dup ('abc', 'ABC');定义了18个字节,他们'是abcABCabcABCabcABC',相当于:db 'abcABCabcABCabcABC'。
dup的使用格式如下:
db 重复的次数 dup (重复的字节型数据)。
dw 重复的次数 dup (重复的字型数据)。
dd 重复的次数 dup (重复的双字数据)。
下面看下如下结构
注意:每一个段最大64K,因为8086CPU是16位的
数据和程序的一个简单框架:
assume cs:codesg
codesg segment
数据定义(dw XX)
start:代码
codesg ends
end start
另外一个框架:
assume cs:code ,ds:datas ,ss:stack
datas segment
数据定义
datas ends
stack segment
数据定义
stack ends
code segment
start:代码
code ends
end start
其中end start表示入口在start标记上
无论生活、还是技术,一切都不断的学习和更新~~~努力~