+ -
当前位置:首页 → 问答吧 → 关于一个小程序的问题

关于一个小程序的问题

时间:2010-12-12

来源:互联网

NAME EX1
PAGE 50,70
;--------------
DAT SEGMENT PARA 'DAT'
A1 DB 12H,34H,56H,78H,9AH;把这8个数输出
  DB 0BCH,0DEH,0F0H
DAT ENDS
;---------------
STAC SEGMENT PARA STACK 'STA'
STA1 DW 100 DUP(?)
STAC ENDS
;------------
CODE SEGMENT PARA 'CODE'
  ASSUME CS:CODE,DS:DAT
  ASSUME SS:STAC,ES:DAT

STAR PROC 
  MOV AX,DAT
  MOV DS,AX
  LEA SI,A1
  MOV BL,8
G: MOV DL,[SI]
  MOV AH,2
  INT 21H
  INC SI
  MOV DL,' '
  MOV AH,2
  INT 21H
  DEC BL
  JNZ G
  RET

CODE ENDS
END STAR

编这程序是想输出在A1中的八个数,但是执行的时候出现The NTVDM CPU has encountered an illegal instruction.
CS:de20 ip:bc20 op:c7 8a e0 65 8a choose 'close'to terminate the application
为什么呢?

作者: qx7297198   发布时间: 2010-12-12

把RET换成
mov ax,4c00h
int 21h

作者: masmaster   发布时间: 2010-12-12