yunfei77 发表于 2012-10-21 13:07:02

阿强 发表于 2012-10-21 13:55:15

帮顶!!!!!!!!!!

fishs 发表于 2012-10-21 14:06:04

啥内容了。。。。

pediyzhi 发表于 2012-10-21 14:15:08

题发出来啊

无限幻想 发表于 2012-10-21 14:24:55

1题:就是让你建立一个栈段,然后依次压栈即可实现
movax, 2000H
movss,ax
movsp,16
2题:同理,只不过是出栈到ds的数据段去
movax, 1000H
movss, ax
movsp, 16

jialebihaidai 发表于 2012-10-21 14:41:37

楼上正解!

yunfei77 发表于 2012-10-21 15:03:11

yunfei77 发表于 2012-10-21 15:07:36

无限幻想 发表于 2012-10-21 15:59:35

你们理解栈的原理吗?,他就像一个水杯,首先倒进去的水是先到杯底的,也就是先压的1000:0000的数据会压到底部去,也就是sp指的位置2000:000E,再压数据依次往上叠,这就叫压栈,一句话栈中的数据先进后出。跟我们往开口容器放东西的原理是一致的。

补充内容 (2012-10-21 16:07):
你mov ss,ax就是定下了栈的段地址。
你们movsp, 16 就是确定了栈的容积或者深度,sp指向ss:10H,压一个字型数据就会指向ss:0EH,明白没有?

yunfei77 发表于 2012-10-21 16:23:18

yunfei77 发表于 2012-10-21 16:37:02

jialebihaidai 发表于 2012-10-21 16:46:25

yunfei77 发表于 2012-10-21 16:37 static/image/common/back.gif
比如说:
int a,b,c;
a=3;


寄存器SS是堆栈段,涉及到堆栈操作pop和push时,自动引用SS内的值作为段地址

补充内容 (2012-10-21 16:53):
这是有关‘寻址方式’的内容

无限幻想 发表于 2012-10-21 16:54:49

yunfei77 发表于 2012-10-21 16:23 static/image/common/back.gif
谢谢说得这么详细和比方啊,这些是容易理解。先进后出。我只是不知道为什么(书上的图来说)左边的数据为 ...

push    push就是压栈指令其实是ds:0000 这个内存地址,ds因为是默认的数据段段地址寄存器,可以省略,这个内存地址对应的字型数据是什么呢?很明显是放在数据段中的0123,因为这个程序头两句说明了ds的段地址是1000H,push , 就是将ds:0000H以及0001H地址的这个字节数据通过压栈的方式压到栈中,栈设置在哪里?题目要求我们压到20000H-20000FH中,我们就把栈的段地址设为2000H,也就是 mov ax, 2000Hmov ss, ax, 这两句来实现,(小甲鱼说过,ss是害羞的小姑娘,是不能不能直接赋值的,只有通过ax这个媒人寄存器来间接赋值。)而我们看到10000H到1000FH,是16个字节,因此我们设sp的时候,16就够压了,所有有一句mov sp, 16,定下了栈的栈顶在什么位置哦,OK,现在总明白了吧。

补充内容 (2012-10-21 17:26):
C语言 指针明白吧, 这个SP其实就是指针差不多,栈中未压数据时是指向栈顶得的,压相应字节,移相应的位置,压一个字型数据,就移两格,因此sp就是告诉你压到哪, 就是告诉你,要压的数据从哪来。

小广 发表于 2012-10-21 18:08:33

顶了   都是会的我这些不懂的   请教了

yunfei77 发表于 2012-10-22 17:16:55

yunfei77 发表于 2012-10-22 17:17:56

小属 发表于 2012-10-22 18:11:37

push是将段地址为1000偏移地址为0的数据压入栈吧

无限幻想 发表于 2012-10-22 18:21:07

yunfei77 发表于 2012-10-22 17:16 static/image/common/back.gif
跟据你们的总结,大概是这样子理解的,你看我理解得对不对??




是的,汇编里面,不指明段地址,只有偏移地址的时候,默认从DS寄存器去读取的。

jialebihaidai 发表于 2012-10-22 22:54:57

yunfei77 发表于 2012-10-22 17:17 static/image/common/back.gif
你看我15楼总结得对不对??是不是这样去理解?

对了,这个我也是刚学过
页: [1]
查看完整版本: 王爽汇编语言课后题检测点3.2的两个题谁能详细说一下吗?