陌路狂奔 发表于 2011-5-2 01:46:19

汇编第35讲求肋

本帖最后由 陌路狂奔 于 2011-5-2 15:31 编辑

在汇编35讲中小甲鱼编写的那个程序有暗示会有问题,但没想到是进入死循环,于是自己试着改变一下,编译,运行都木有问题,DEBUG了一下也达到了改成大写的要求,就发给朋友看看,有木有错误之类的。可是他说有问题,能运行是我运气好,问他又不肯说让我自己去想(顺便鄙视一下那家伙总是不告诉我说答案。)纠结了好一会,还是弄不明白。各位同学或者老师帮忙解答一下吧,看一下问题在哪里。{:5_96:}
代码如下:assume cs:codesg,ds:datasg

datasg segment
db 'ibm             '
db 'dec             '
db 'dos             '
db 'vax             '
datasg ends

codesg segment
start:mov ax,datasg
      mov ds,ax
          mov bx,0
          
          mov cx,4
   s0:mov si,0
      push cx
          mov cx,3
        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

china0008 发表于 2011-5-2 08:46:42

这题原本的题目要求是啥来着?我忘记了。麻烦你补充下再帮你看看。

wy54072851 发表于 2011-5-2 09:58:03

看了半天原来你没定义栈:L 加两句
MOV SS,21
xor sp
这就搞定了~

wy54072851 发表于 2011-5-2 09:58:41

:L。。。。是MOV SS,21H:L
页: [1]
查看完整版本: 汇编第35讲求肋