缌唸 发表于 2013-8-11 11:23:26

关于寻址写法的问题

王爽老师书上说可以用这种写法,但是当我用编译器编译时却会报错,必须用这种写法,才能通过,谁能告诉我为什么吗?
谢谢了

福禄娃娃 发表于 2013-8-11 14:26:34

本帖最后由 福禄娃娃 于 2013-8-11 14:31 编辑

可以使用这种寻址方式,你用masm编译下试试assume cs:code

code segment
start:
mov bx, 0
mov si,1
mov , ax
mov ax,

mov ax,4c00h
int 21h
code ends
end start

缌唸 发表于 2013-8-11 19:19:54

本帖最后由 缌唸 于 2013-8-11 19:22 编辑

福禄娃娃 发表于 2013-8-11 14:26 http://bbs.fishc.com/static/image/common/back.gif
可以使用这种寻址方式,你用masm编译下试试

assume cs:codesg,ds:datasg,ss:stacksg

datasg segment
       db '1. display      '
       db '2. brows      '
       db '3. replace      '
       db '4. modify       '
DATASG ENDS
STACKSG SEGMENT
      DW 0,0,0,0,0,0,0,0
STACKSG ENDS
CODESG SEGMENT
START: MOV AX,DATASG
       MOV DS,AX
         MOV BX,0
         MOV AX,STACKSG
         MOV SS,AX
         MOV SP,16
         MOV CX,4
S0:    PUSH CX
       MOV SI,0
         MOV CX,4
S:   MOV AL,            ’必须
         AND AL,11011111B
         MOV ,AL   ‘ 必须用   
         INC SI
         LOOP S
         ADD BX,16
         POP CX
         LOOP S0
         MOV AX,4C00H
         INT 21H
      CODESG ENDS
      END START
你复制下编译试试,用【bx+si+idta】 就不行,必须用【bx+idta】【si】这种形势

福禄娃娃 发表于 2013-8-11 19:55:06

缌唸 发表于 2013-8-11 19:19 static/image/common/back.gif
assume cs:codesg,ds:datasg,ss:stacksg

datasg segment


只能这样,估计是编译器的问题
MOV AL,            
MOV ,AL

缌唸 发表于 2013-8-12 08:46:36

福禄娃娃 发表于 2013-8-11 19:55 static/image/common/back.gif
只能这样,估计是编译器的问题
MOV AL,            
MOV ,AL

哦哦哦哦{:1_1:}

牡丹花下死做鬼 发表于 2013-8-14 10:25:28

不行吗 ??我可以啊 八成是你的masm.exe抽风了
我的是论坛下载的
   还有你是不是win7 如果是的话 这也不值得奇怪 反正win7遇到问题不是第一次了

缌唸 发表于 2013-8-14 12:50:06

牡丹花下死做鬼 发表于 2013-8-14 10:25 static/image/common/back.gif
不行吗 ??我可以啊 八成是你的masm.exe抽风了
我的是论坛下载的
   还有你是不是win7 如果是的话 ...

嗯 我是 win7
页: [1]
查看完整版本: 关于寻址写法的问题