资讯   |   开发   |   选机中心   |   产品大全 | IBM | 惠普 | 联想 | 戴尔 | 苹果 | 神舟
更多: | 华硕 | 明基 | 方正 | 紫光 | TCL | 夏新 | 联宝 | 宏碁 | 七喜 | 长城 | 清华同方 | 海尔 | 三星 | 东芝 | 索尼 | 富士通 | LG | 技术 | ddnoon
当前位置:笔记本 > 软件开发 >
Advertisement
文章正文

汇编新手问...

类型:转载   责任编辑:asp.net   日期:2007/05/23


热门软件下载:


   

功能:把BX中的二进制数以16进制ASCII码的形式输出  
   
  code segment  
  assume cs:code  
  start: mov ch,04h  
  mov bx,1234h  
  rotate:                   mov cl,4  
  rol bx,cl  
  mov al,bl  
  and al,0fh  
  add al,30h  
  cmp al,3ah  
  jl printit  
  add al,7h  
  printit:                   mov dl,al  
  mov al,2  
  int 21h  
  dec ch  
  jnz rotate  
  code ends  
  end start  
   
  这段代码在MASM5下可以编译通过,但用debug32调试运行的时候却显示:Invalid   opcode  
  为什么呀?系统是WinXP

网友回答:

发表者:wangziz

用debug调试没问题

发表者:mydo

你没有写退出代码,所以程序将继续往下执行,直到遇到非法操作码。  
  正确的做法是在结尾处加上退出代码,eg:  
   
  mov     ah,4ch  
  int     21h


 

 
热门推荐笔记本: IBM笔记本
相关文章:
笔记本相关:
IT技术文章:
webmaster:popbb@126.com   最佳浏览:1024X768 MSIE
©2007 popbb.net All Rights Reserved