<汇编语言> 4. 第一个程序
源程序
伪指令 :编译器处理
汇编指令 :编译为机器码
源程序 :程序文件所有内容
程序 :源程序中最终由计算机执行处理的指令或数据,存储在可执行文件(.exe)中
# 伪指令 段寄存器(这里是cs,代码码寄存器) <--关联--> 某 segment ... ends
assume: cs:codeseg
# 段
codeseg segment # 伪指令,表示代码段
# XXX segment
# ...
# XXX ends
# codeseg是一个标号,代表一个地址,
# 编译时,codeseg segment 做为一个段 的名称,最终被处理为一个段的段地址
start: mov ax,0123H # 汇编指令
mov bx,0423H
add ax,bx
add ax,ax
mov ax,4c0bH
int 21H
codesg ends # 伪指令,表示代码段结束
end # 伪指令,表示源程序结束
结束与返回
#段结束 :
段名 ends
#程序结束:
end
#程序返回:
mov ax,4C00H
int 21H
程序运行
程序调用:
程序入口: CS = DS + 10H
SA+10H:0 相当于 SA: 100H, SA+100H, SA + 256
CS = DS +10H
CS:IP = DS:IP + 100H = DS X 16(左移一位) +IP + 256
这差的 256 就是 PSP