欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

汇编语言的输入输出有关问题

更新时间: 2014-01-05 03:17:52 责任编辑: Author_N1

 

汇编语言的输入输出问题
我用这段代码,但是在结果输不出来,请高手指教!

stack segment
     ;   
stack ends
dataq segment
data DW 70 DUP(1),2,3,4,5,6,7,8,9,11,12,20 DUP(7)
dataq ends
program segment
main proc far
          assume cs:program,ss:stack,ds:dataq
start:
          push ds
          sub ax,ax
          push ax
begin:    lea bx,data
          push bx
          mov cx,100
rotate2:  mov ax,[bx]
          add bx,2
          test ax,01h
          loopnz rotate2
          jnz stop
          jcxz stop2                  
rotate3:  mov dx,[bx]
          add bx,2
          test dx,01h
          loopnz rotate3
          jnz stop
          jcxz stop2
          cmp ax,dx
          jb rotate3
          mov ax,dx
          jmp rotate3
          mov ch,2
          mov cl,4
   stop2: rol ax,cl
          mov ah,2
          int 21h
          dec ch
          jnz stop2
   stop:  jmp begin
   stop1: ret
main     endp
program  ends
         end start

--参考方法--
忘了加载DS
mov ax,dataq
mov ds,ax

test ax,1
只有ax为零才相等

loopnz rotate2          
jnz stop 
stop:  jmp begin 
这3句死循环



写个显示函数
显示al中的值

display:
      push ax         ;保护现场
      push cx
      push dx

      mov dh,al       ;暂时存放al的值
      mov ch,2
      mov cl,4
      shr al,cl       ;先显示高位
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 03:17:52
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/20542/
本文WWW.DOC100.NET DOC100.NET版权所有。