. : : Assembly Language : : .
|
首页
|
我提出的问题
|
我参与的问题
|
我的收藏
|
消息中心
|
游客 登录
|
提问
|
未解决
|
已解决
|
精华区
|
搜索
|
《汇编语言》论坛
->
包含多个段的程序
主题 : :
关于书中P125的一段话
[已解决]
回复[
10
次 ] 点击[
746
次 ]
yuhuofei
[帖 主]
[ 发表时间:2008-12-22 18:22 ]
荣誉值:0
信誉值:0
注册日期:2008-11-17 21:27
书中125页图6.1下边有一段话这样写:
图6.1中,通过“DS=0B2D”,可知道程序从0B3D:0000开始存放。……
为什么要通过看DS的值呢???直接看CS、IP不是也可以知道程序从0B3D:0000开始存放吗???
不解书上为什么要这么说?
难道是因为那个PSP吗?
请指教。
wsrf
[第
1
楼]
[ 回复时间:2008-12-28 16:00 ]
荣誉值:33
信誉值:0
注册日期:2008-10-16 10:01
楼主说的对,是因为PSP段,它的大小是固定的256个字节。CS:IP只是指向了程序的入口地址,并不一定代表程序的起始地址。
如:
assume cs:code,ds:data
data segment
db 100 dup(0)
data ends
code segment:
db 10 dup(0)
start: mov ax,4c00h
int 21h
code ends
end start
程序加载后,CS:IP指向了start位置,而程序的真正起始地址因该是数据段的起始地址。
此问题已结贴!
Copyright © 2006-2024 ASMEDU.NET All Rights Reserved