鱼C论坛

 找回密码
 立即注册
查看: 2176|回复: 5

蹦出个对话框····

[复制链接]
发表于 2012-5-30 17:23:35 | 显示全部楼层 |阅读模式
1鱼币
assume cs:codesg,ds:datasg,es:table

datasg segment
  db '1975','1976','1977','1978','1979','1980','1981','1982','1983','1984'
  dd 16,22,382,1356,2390,8000,1843000,2759000,3753000,4649000
  dw 3,7,99,13,28,8226,11542,14430,15257,17800
datasg ends

table segment
  db 10 dup('year summ ne ?? ')
table ends

codesg segment
start: mov ax,datasg
   mov ds,ax
   mov ax,table
   mov ax,es
  
   mov bx,0
   mov si,0
   mov di,0
  
   mov cx,10
s:  mov ax,[bx]
   mov dx,[bx+2]
   mov es:[di],ax
   mov es:[di+2],dx
  
   mov ax,[bx+40]
   mov dx,[bx+42]
   mov es:[di+5],ax
   mov es:[di+7],dx
  
   div word ptr [si+80]
   mov es:[di+0dh],ax
  
   mov ax,[bx+si+80]
   mov es:[di+0ah],ax
  
   add bx,4
   add si,2
   add di,16
   loop s
  
  mov ax,4c00h
  int 21h
  
codesg ends
end start
在debug 执行 int 21h的时候··就蹦出来个对话框·
the ntvdm cpu has encountered an illegal instruction.
cs:05ef ip:0003 op:ff ff ff ff ff choose 'close' to terminate the application.

哪位大神  告诉我一下神马情况啊···



最佳答案

查看完整内容

代码中的第四行写反了 应该是 mov es,ax 这些在编译的时候是可以找出来的吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-5-30 17:23:36 | 显示全部楼层
代码中的第四行写反了 应该是  mov es,ax  这些在编译的时候是可以找出来的吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-5-31 14:52:13 | 显示全部楼层
虚拟机cpu遇到一个 非法指令
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-5-31 16:06:55 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-6-1 12:50:26 | 显示全部楼层
努力学习 发表于 2012-5-31 21:07
代码中的第四行写反了 应该是  mov es,ax  这些在编译的时候是可以找出来的吧

嗯·· ··谢谢了··· 不过  我编译的时候 确实没有报错·······
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-7-31 22:22:05 | 显示全部楼层

呵呵 ···一起 努力····
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-8 06:17

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表