Illegal instruction in Assembly
Posted
by Natasha
on Stack Overflow
See other posts from Stack Overflow
or by Natasha
Published on 2010-04-15T16:24:42Z
Indexed on
2010/04/15
16:33 UTC
Read the original article
Hit count: 366
assembly
I really do not understand why this simple code works fine in the first attempt but when putting it in a procedure an error shows:
NTVDM CPU has encountered an illegal instruction CS:db22 IP:4de4 OP:f0 ff ff ff ff
The first code segment works just fine:
.model small
.stack 100h
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
MOV AH,02H ;sets cursor up
MOV BH,00H
MOV DH,02
MOV DL,00
INT 10H
EXIT:
MOV AH,4CH
INT 21H
END
However This generates an error:
.model small
.stack 100h
.code
start:
mov ax,@data
mov ds,ax
mov es,ax
call set_cursor
PROC set_cursor near
MOV AH,02H ;sets cursor up
MOV BH,00H
MOV DH,02
MOV DL,00
INT 10H
RET
set_cursor ENDP
EXIT:
MOV AH,4CH
INT 21H
END
Note: Nothing is wrong with windows config. I have tried many sample codes that work fine
Thanks
© Stack Overflow or respective owner