接下来,我们开始真正学写汇编程序,前面都是铺垫知识,我和大家一起学习,如果哪里讲的不好或讲错了,谢谢大家帮我指出。
assume cs:codesg
codesg segment
mov ax,0123H
mov bx,0456H
add ax,bx
add ax,ax
mov ax,4c00H
int 21H
codesg ends
end
说明:汇编程序中有两种指令,一种是汇编指令,一种是伪指令。汇编指令是有对应的机器码指令,可以被编译成机器指令,最终被CPU执行。而伪指令没有对应的机器指令,最终不被CPU执行。伪指令石油编译器执行的,编译器根据伪指令进行相关的编译工作。
其中:
段名 segment
段名 ends
是一对成对使用的伪指令,segment和ends功能是定义一个段,segment是段的开头,ends
是段的结尾,一个段必须有一个名称来标志,上面出现中codesg就是一个名称而已。
程序中end是汇编程序结束标志,编译器在编译汇编程序的过程中,如果碰到伪指令end,就结束对程序的编译。
assume这条伪指令的含义:“假设”,它假设某一寄存器与程序中的某一个用segment.......ends定义的段相关联。
这两条指令的功能就是程序返回。至于为什么,我还没看到呢,后面再讲。