鱼C论坛

 找回密码
 立即注册
查看: 3067|回复: 13

[汇编作业] 编译出现的问题!来人帮忙看看谢谢啦

[复制链接]
发表于 2014-3-12 22:17:01 | 显示全部楼层 |阅读模式
1鱼币
代码如下
              ASSUME    CS:CODE,DS:DATA,SS:P

        DATA  SEGMENT
              DW        0123H, 0456H, 0789H, 0ABCH, 0DEFH, 0FEDH, 0CBAH, 0987H
        DATA  ENDS

           P  SEGMENT
              DW        0, 0, 0, 0, 0, 0, 0, 0
           P  ENDS

        CODE  SEGMENT

          P:  MOV       AX,P
              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       P
用masm编译的结果如图
P~GC`MIPH7FO6}HS[2_BW70.jpg
错误 在13行和26行问题在那个p上面 可是不管我怎么修改还是一样的结果!




想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 22:46:07 | 显示全部楼层
【code】
ASSUME    CS:CODE,DS:DATA,SS:P1

        DATA  SEGMENT
              DW        0123H, 0456H, 0789H, 0ABCH, 0DEFH, 0FEDH, 0CBAH, 0987H
        DATA  ENDS

           P1  SEGMENT
              DW        0, 0, 0, 0, 0, 0, 0, 0
           P1  ENDS

        CODE  SEGMENT

          P:  MOV       AX,P1
              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       P
[/code]
//程序可以了,改了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 22:48:07 | 显示全部楼层
本帖最后由 swsm 于 2014-3-12 22:49 编辑
ASSUME    CS:CODE,DS:DATA,SS:P1   ;在此处更改成了P1

        DATA  SEGMENT
              DW        0123H, 0456H, 0789H, 0ABCH, 0DEFH, 0FEDH, 0CBAH, 0987H
        DATA  ENDS

           P1  SEGMENT          ;这里也是同上
              DW        0, 0, 0, 0, 0, 0, 0, 0
           P1  ENDS                 ;这里也是同上

        CODE  SEGMENT

          P:  MOV       AX,P1
              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       P
//程序可以了,改了的地方程序中已标出!问题是你命名时重复了P,有问题在交流啊!!!呵呵呵呵!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-12 22:48:37 | 显示全部楼层
AX,为什么是P1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 22:51:33 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-12 22:59:08 | 显示全部楼层
  P:  MOV       AX,P1
              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       P

在这段代码中 p是栈的入口
p1则是栈的段地址
是这意思吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 23:18:06 | 显示全部楼层
五步蛇 发表于 2014-3-12 22:59
P:  MOV       AX,P1
              MOV       SS,AX
              MOV       SP,16

不是,你要好好看看小甲鱼的视频了,P是你的程序最开始也就是cs和ip指向的地方,而P1是栈基址这个是需要你在程序中写代码完成的,是你的mov ax,p1,mov ss,ax这俩句    要好好看看视频啊!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-13 11:45:58 | 显示全部楼层
好的懂了谢谢!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-13 21:19:48 | 显示全部楼层
问题解决了   怎么结贴啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-13 21:37:21 | 显示全部楼层
swsm 发表于 2014-3-12 22:48
//程序可以了,改了的地方程序中已标出!问题是你命名时重复了P,有问题在交流啊!!!呵呵呵呵!

下次细心一点哈!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-3-13 21:45:49 | 显示全部楼层
无名侠 发表于 2014-3-13 21:37
下次细心一点哈!

为什么让我细心一点啊,我会注意的,力所能及的就帮助一下别人,是吧,版主!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-5-8 19:21:55 | 显示全部楼层
无语。。重名问题你也问话说你干嘛要这样命名?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-21 19:53:23 | 显示全部楼层
本帖最后由 lyjztz 于 2014-11-21 19:54 编辑

你已经假设代码段绑定到code,p 绑定到栈段,你把第13行的P改为其他的(比如P1),也把END P改为END P1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-11-26 14:35:25 | 显示全部楼层

数据段的首地址内容传给AX
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-28 09:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表