+ -
当前位置:首页 → 问答吧 → 改写除法错误中断,radasm下编译不成功。求勾答

改写除法错误中断,radasm下编译不成功。求勾答

时间:2011-06-15

来源:互联网

编译总是显示创建进程错误。
=======================
我建文件过程:
文件
新建工程
Dos App
Dos Exe.tpl(刚开始不推荐.COM,第三个也行自己喜欢哪个就选哪个)
一直下一步就完成了工程的创建
在RadAsm的右边选择.ASM打开(一般是默认的),在.ASM的版面上编写代码
代码编写完成后,构建当中"编译—连接—运行"
全过程完成 

这个是我从网上找到的,应无错
=======================
代码:
  SSEG SEGMENT PARA STACK
  DB 128 DUP (?)
  SSEG ENDS

  DSEG SEGMENT
  ERROR1 DB 'OVERFLOW!',0DH,0AH,'$'
  MSG1 DB 'COUTINUE OR QUIT( INPUT C/Q ):','$'
  MSG2 DB 0DH,0AH,'TO THE END!!!','$'
  DSEG ENDS

  CSEG SEGMENT
  ASSUME CS:CODSEG,DS:DATSEG,SS:STASEG
  START:
  MOV AX,DSEG
  MOV DS,AX

  PUSH DS

  MOV AX,CS ;设置DS:SI执行源地址
  MOV DS,AX
  MOV SI,OFFSET SDIV

MOV AX,0 ;设置ES:DI执行目的地址
  MOV ES,AX
  MOV DI,200H

  MOV CX,OFFSET SDIVEND - OFFSET SDIV ;设置循环次数
  CLD ;设置方向标志DF正向

  REP MOVSB ;字符串传送

  POP DS
   
MOV AX,0H
MOV ES,AX
  MOV ES:[0*4],200H
  MOV ES:[O*4+2],0

  MOV AX,1H
  MOV BL,0
  DIV BL
  EXIT:
  MOV AX,4C00H
  INT 21H

  SDIV:
  MOV DX,OFFSET ERROR1
  MOV AH,09H
  INT 21H

  MOV DX,OFFSET MSG1
  MOV AH,09H
  INT 21H

  MOV AH,01H
  INT 21H

  CMP AL,'Q'
  JE EXIT

  MOV DX,OFFSET MSG2
  MOV AH,09H
  INT 21H

  MOV AH,07H
  INT 21H
   
  JMP EXIT
  IRET
  SDIVEND: NOP

  CSEG ENDS
  END START

作者: unicorn303   发布时间: 2011-06-15

有什么出错提示

作者: MSOKD   发布时间: 2011-06-15

问题解决了,但还是感谢LS的回答

作者: unicorn303   发布时间: 2011-06-15