mov ax,cs 和 mov cs,code的区别
本帖最后由 赵璐 于 2012-1-2 18:46 编辑assume cs:code
code segment
start: mov ax_(在这空填cs和code一样的吧)
mov ax,0
mov ds,ax
mov bx,0
mov cx,12
s: mov ax,
mov cs:,ax
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
本帖最后由 415968430 于 2012-1-1 10:27 编辑
我感觉
mov ax,code
mov cs,ax
这样好像没有必要的额,个人感觉什么mov ax,code啊data啊其实就是把代码段数据段的段地址给ax啦,好像载入内存以后cs就直接是代码段段地址了,不用我没画蛇添足的。而data就不一样了,记得程序开头有个PSP吧,占了256个Byte,所以如果源程序是没有栈段或数据段或者先代码段的那ds比cs多10H,如果源代码先有数据段的那ds比cs多10h还要再多那个数据段长度吧,因为载入内存时好像ds是指向PSP的段地址的,这时
mov ax,data
mov ds,ax
好像就有意义了,因为刚载入时ds和data的段地址不一样的,你换成data单步执行试试,
申明哈:我也是新手,这是我的理解。仅供参考!!哈哈{:5_109:} thank you哈哈
页:
[1]