single 发表于 2013-7-23 10:58:52

实验4 [bx]和loop的使用 =====大神 求科普

代号潜水艇 发表于 2013-7-23 11:28:43

我也没看懂3F4E的意思

Kinich_Ahau 发表于 2013-7-23 12:31:58

本帖最后由 Kinich_Ahau 于 2013-7-23 12:33 编辑

第一次push   压入3f3e   
内存 0:23f 为 3f (63)
       0:23e 为 3e (62)
第二次push压入3d3c
内存 0:23d   为 3d (61)
       0:23c    为 3c (60)
。。。。。。
以下略

也就是说一次压入的是两个数,这也是为什么cx为32的原因!!
实验4原本要求是要一个一个放进内存的!

single 发表于 2013-7-23 12:39:07

Kinich_Ahau 发表于 2013-7-23 12:31 static/image/common/back.gif
第一次push   压入3f3e   
内存 0:23f 为 3f (63)
       0:23e 为 3e (62)


O(∩_∩)O谢谢妥妥的。。

single 发表于 2013-7-23 12:41:47

Kinich_Ahau 发表于 2013-7-23 12:31 static/image/common/back.gif
第一次push   压入3f3e   
内存 0:23f 为 3f (63)
       0:23e 为 3e (62)


大神 后面 sun bx,202h也科普下

Kinich_Ahau 发表于 2013-7-23 12:43:46

single 发表于 2013-7-23 12:39 static/image/common/back.gif
O(∩_∩)O谢谢妥妥的。。

:lol也算是对自己的复习啊!:lol

狂潮丶 发表于 2013-7-23 12:48:05

代号潜水艇 发表于 2013-7-23 11:28 static/image/common/back.gif
我也没看懂3F4E的意思

3f3e........

Kinich_Ahau 发表于 2013-7-23 12:49:24

single 发表于 2013-7-23 12:41 static/image/common/back.gif
大神 后面 sun bx,202h也科普下

是sub bx,202h
sub是相减,这里是bx减去202再存到bx里!
我也不是什么大神,只是以前刚开始学编程时就是学的汇编!:lol

狂潮丶 发表于 2013-7-23 12:58:24

实验4 和loop的使用(1) 编程,向内存0:200~0:23f依次传递数据0~63(3fh)。 这是个比较另类的做法,传统做法请参考实验4(2)assume cs:codecode segment   mov bx,20h   mov ss,bx   mov sp,40h   ;十六进制的40h也就是十进制的64。   mov bx,3f3eh   ;3f3e是两个字节,也就是一个字。而且3f3e是入栈的第一个数据。3f是高位,3e是低位。所以看的时候要从右向左。从上到下。   mov cx,32      ;所以cx=32s:   push bx   sub bx,202h    ;这里每次减去202h是因为3f3eh-202h=3d3ch,每次减去202h都是下一个入栈数据。   loop s   mov ax,4c00h   int 21hcode endsend

希望对你有帮助。   

                            狂潮丶

大娱乐家_╮ 发表于 2013-7-23 13:01:36

sun bx,202h也科普下

a02201023 发表于 2013-7-23 14:36:24

时间久了,又遗忘了:F

lzz01 发表于 2013-7-23 19:16:49

果然另类,我喜欢哈哈!!!!!!!!!!
页: [1]
查看完整版本: 实验4 [bx]和loop的使用 =====大神 求科普