鱼C论坛

 找回密码
 立即注册
查看: 3532|回复: 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上面 可是不管我怎么修改还是一样的结果!




小甲鱼最新课程 -> https://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]
//程序可以了,改了
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 22:48:07 | 显示全部楼层
本帖最后由 swsm 于 2014-3-12 22:49 编辑

  1. ASSUME    CS:CODE,DS:DATA,SS:P1   ;在此处更改成了P1

  2.         DATA  SEGMENT
  3.               DW        0123H, 0456H, 0789H, 0ABCH, 0DEFH, 0FEDH, 0CBAH, 0987H
  4.         DATA  ENDS

  5.            P1  SEGMENT          ;这里也是同上
  6.               DW        0, 0, 0, 0, 0, 0, 0, 0
  7.            P1  ENDS                 ;这里也是同上

  8.         CODE  SEGMENT

  9.           P:  MOV       AX,P1
  10.               MOV       SS,AX
  11.               MOV       SP,16
  12.               MOV       AX,DATA
  13.               MOV       DS,AX
  14.               PUSH      DS:[0]
  15.               PUSH      DS:[2]
  16.               POP       DS:[2]
  17.               POP       DS:[0]

  18.               MOV       AX,4C00H
  19.               INT       21H
  20.         CODE  ENDS
  21.               END       P
复制代码

//程序可以了,改了的地方程序中已标出!问题是你命名时重复了P,有问题在交流啊!!!呵呵呵呵!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-12 22:48:37 | 显示全部楼层
AX,为什么是P1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-3-12 22:51:33 | 显示全部楼层
小甲鱼最新课程 -> https://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则是栈的段地址
是这意思吗?
小甲鱼最新课程 -> https://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这俩句    要好好看看视频啊!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-13 11:45:58 | 显示全部楼层
好的懂了谢谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2014-3-13 21:19:48 | 显示全部楼层
问题解决了   怎么结贴啊?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

下次细心一点哈!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

为什么让我细心一点啊,我会注意的,力所能及的就帮助一下别人,是吧,版主!!!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2014-5-8 19:21:55 | 显示全部楼层
无语。。重名问题你也问话说你干嘛要这样命名?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

你已经假设代码段绑定到code,p 绑定到栈段,你把第13行的P改为其他的(比如P1),也把END P改为END P1
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

数据段的首地址内容传给AX
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-7-7 08:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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