回 帖 发 新 帖 刷新版面

主题:这个程序怎么回事?

我自学的汇编,从开始就有很多地方迷迷糊糊的。弄了好久才知道怎么写简单的程序。
如:
data  segment
a1    db    30
a2    db    40
a3    db    ?
data  ends
code  segment
      assume  cs:code,ds:data
start:
      mov  ax,data
      mov  ds,ax
      mov  ax,a1
      cmp  ax,a2
      jb   done
      mov  ax,a2
done: mov  a3,ax
      mov  ah,4ch
      int  21h
code  ends
end start

这个不用注释了吧,就是比较大小的。
为什么我构建的时候总是构建错误啊?我用的是radasm那个汇编工具

回复列表 (共2个回复)

沙发

应该这样写

    data  segment
a1    db    30
a2    db    40
a3    db    ?
data  ends
code  segment
      assume  cs:code,ds:data
start:
      mov  ax,data
      mov  ds,ax
      mov  al,byte ptr [a1]
      cmp  al,byte ptr [a2]
      jb   done
      mov  al,byte ptr [a2]
done: mov  byte ptr [a3],al
      mov  ah,4ch
      int  21h
code  ends
end start

板凳

a1是db 不能送ax,要送al吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册