2548827329 发表于 2013-4-22 23:02:30

第七章 问题7.6

assume cs:codesg ,ds:datasg

datasg segment
       db '1. file         '
           db '2. edit         '
           db '3. seach      '
           db '4. viwe         '
           db '5. options      '
           db '6. help         '
datasg ends

codesg segment
start:
       mov ax,datasg
           mov ds,ax
           mov bx,0
           mov cx,6
s:           mov al,
           add al,11011111b
           mov ,al
           add bx,16
           loop s
          
       mov ax,4c00h
           int 21h

codesg ends
end start           debug运行结果:
-r
AX=0000BX=0000CX=007DDX=0000SP=0000BP=0000SI=0000DI=0000
DS=0B50ES=0B50SS=0B60CS=0B66IP=0000   NV UP EI PL NZ NA PO NC
0B66:0000 B8600B      MOV   AX,0B60
-d ss:0
0B60:000031 2E 20 66 69 6C 65 20-20 20 20 20 20 20 20 20   1. file
0B60:001032 2E 20 65 64 69 74 20-20 20 20 20 20 20 20 20   2. edit
0B60:002033 2E 20 73 65 61 63 68-20 20 20 20 20 20 20 20   3. seach
0B60:003034 2E 20 76 69 77 65 20-20 20 20 20 20 20 20 20   4. viwe
0B60:004035 2E 20 6F 70 74 69 6F-6E 73 20 20 20 20 20 20   5. options
0B60:005036 2E 20 68 65 6C 70 20-20 20 20 20 20 20 20 20   6. help
0B60:0060B8 60 0B 8E D8 BB 00 00-B9 06 00 8A 47 03 04 DF   .`..........G...
0B60:007088 47 03 83 C3 10 E2 F3-B8 00 4C CD 21 2B C6 2E   .G........L.!+..
-u
0B66:0000 B8600B      MOV   AX,0B60
0B66:0003 8ED8          MOV   DS,AX
0B66:0005 BB0000      MOV   BX,0000
0B66:0008 B90600      MOV   CX,0006
0B66:000B 8A4703      MOV   AL,
0B66:000E 04DF          ADD   AL,DF
0B66:0010 884703      MOV   ,AL
0B66:0013 83C310      ADD   BX,+10
0B66:0016 E2F3          LOOP    000B
0B66:0018 B8004C      MOV   AX,4C00
0B66:001B CD21          INT   21
0B66:001D 2BC6          SUB   AX,SI
0B66:001F 2E            CS:
0B66:0020 01065791      ADD   ,AX
-g18

AX=0B47BX=0060CX=0000DX=0000SP=0000BP=0000SI=0000DI=0000
DS=0B60ES=0B50SS=0B60CS=0B66IP=0018   NV UP EI PL NZ NA PE NC
0B66:0018 B8004C      MOV   AX,4C00
-t

AX=4C00BX=0060CX=0000DX=0000SP=0000BP=0000SI=0000DI=0000
DS=0B60ES=0B50SS=0B60CS=0B66IP=001B   NV UP EI PL NZ NA PE NC
0B66:001B CD21          INT   21
-d ds:0
0B60:000031 2E 20 45 69 6C 65 20-20 20 20 20 20 20 20 20   1. Eile
0B60:001032 2E 20 44 64 69 74 20-20 20 20 20 20 20 20 20   2. Ddit
0B60:002033 2E 20 52 65 61 63 68-20 20 20 20 20 20 20 20   3. Reach
0B60:003034 2E 20 55 69 77 65 20-20 20 20 20 20 20 20 20   4. Uiwe
0B60:004035 2E 20 4E 70 74 69 6F-6E 73 20 20 20 20 20 20   5. Nptions
0B60:005036 2E 20 47 65 6C 70 20-20 20 20 20 20 20 20 20   6. Gelp
0B60:0060B8 60 0B 8E D8 BB 00 00-B9 06 00 8A 47 03 04 DF   .`..........G...



为什么结果的第一个字母变成了别的,代码应该没问题,我照着书写的

熊文杰 发表于 2013-4-22 23:02:31

我先进来了,楼主,感谢!我也犯过同样的错误,哈哈

2548827329 发表于 2013-4-22 23:13:32

本帖最后由 2548827329 于 2013-4-22 23:20 编辑

我的个脑子啊,居然把and写成了add,而且看了半天没看出来,把帖子发了就断网了,又看了几遍就看出来了,粗心啊,看谁先进来就领了那悬赏吧

2548827329 发表于 2013-4-23 09:40:53

熊文杰 发表于 2013-4-22 23:02 static/image/common/back.gif
我先进来了,楼主,感谢!我也犯过同样的错误,哈哈

这样就应该可以长记性了吧
页: [1]
查看完整版本: 第七章 问题7.6