标签:结束 功能 代码段 star 开始 sum 一个 segment 编程
data segment ;定义数据段,数据存放的地方,segment表段的开始,ends结束,data为段名,编译后变为地址
tab db ‘hello world$‘ ;定义变量 汇编定义变量的格式为【变量名】【变量类型】【数值列表】
;变量类型有db(字节,字符串存储必须用这个)dw(字,即两字节)
;dd(双字)数值列表用逗号隔开,字符串单引号和双引号均可
;$可用作串结束符 ,也可代表当前地址
data ends
code segment ;代码段
assume cs:code, ds:data ;假设某一段寄存器和程序的某一个段关联
start: mov ax,data
mov ds,ax
lea dx,tab ;LEA指令可以将后者(可为数,变量名、标号或地址表达式)
;的地址传送到指定的的16位通用寄存器
mov ah,9h ;这两句是实现DOS调用中的09号功能,就是在屏幕上显示字符串
int 21h
mov ah,4ch ;程序返回
int 21h
code ends
end start ;表明汇编程序结束,不同于ends
汇编局部变量和全局变量:
全局变量和局部变量的体现是通过栈来实现的,即:
全局变量保存在数据段中,即伪代码中声明的DATA SEGMENT,任何时刻都能调用。
而局部变量则保存在栈段中,是伪代码中声明的STACK SEGMENT,平时不调用,
调用中断时把局部变量从栈里取出来
标签:结束 功能 代码段 star 开始 sum 一个 segment 编程
原文地址:http://www.cnblogs.com/otaganyuki/p/7795506.html