占用多少空间?

tonytyk 2011-04-14 10:20:58
assume cs:code,ds:data,ss:stack
code segment
start:mov ax,stack
mov ss,ax
mov sp,8h

mov ax,data
mov ds,ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h
code ends

data segment
dw 0123h,0456h
data ends

stack segment
dw 0,0
stack ends

end start
问如果code段的段地址是X,则data段和stack段地址分别是多少 ?
给出具体解释
...全文
108 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaoD 2011-04-15
  • 打赏
  • 举报
回复
对于上边两个题目,知道CODE段的段地址的话,DATA段和STACK段地段地址自然是固定的,对于第一题,CODE段的段地址假设为X,stack段的段地址就为x-1,data段的段地址就为x-2。对于第二题,同样假设code段的段地址为x,stack段的段地址就为x-1,data段的段地址为x-4。
xiaoD 2011-04-14
  • 打赏
  • 举报
回复
楼上正解。这个得看code段有多少字节,不能单纯的推导出答案,是没有规律的。但就这个程序来说,答案就是x+3,x+4,因为code段占用了30h字节的空间,data段占用了10h字节空间。不过有意思的是最后stack段只占了4字节,这个我曾在你的上一个帖子中说过,你可以去验证一下。
zara 2011-04-14
  • 打赏
  • 举报
回复
自然是根据 code 和 data 两段的大小分析出来的。比如 code 段里代码占用了 2xh 个字节,那么该段就会占用 30h 字节的空间,因为段是必须对齐到 10h 的;这 30h 字节的大小,转换到段址上,就是 X+3 ,这就是后续的 data 段的段址。再下来的 stack 类似,要再加上 data 段的空间而已。
tonytyk 2011-04-14
  • 打赏
  • 举报
回复
好像是根据什么分析出来的,网上答案是X+3,X+4,谁能具体说一下怎么来的
zara 2011-04-14
  • 打赏
  • 举报
回复
汇编链接成执行文件,进 debug 看下就知道了。如果是仅凭手工分析的话,有些夸张了;code 段里那么些指令,要一一明确其长度以得到总的空间大小,这个要求不合适。
tonytyk 2011-04-14
  • 打赏
  • 举报
回复
上面两题答案分别又是多少?这个总是固定的吧
tonytyk 2011-04-14
  • 打赏
  • 举报
回复
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h,0h
data ends

stack segment
dw 0,0
stack ends

code segment
start:mov ax,stack
mov ss,ax
mov sp,16

mov ax,data
mov ds,ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h
code ends


end start
tonytyk 2011-04-14
  • 打赏
  • 举报
回复
assume cs:code,ds:data,ss:stack
data segment
dw 0123h,0456h
data ends

stack segment
dw 0,0
stack ends

code segment
start:mov ax,stack
mov ss,ax
mov sp,16

mov ax,data
mov ds,ax

push ds:[0]
push ds:[2]
pop ds:[2]
pop ds:[0]

mov ax,4c00h
int 21h
code ends


end start

21,459

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧