вот полный код проги(com) выводяшей сканкод клавиши
Код:
.286
cseg segment
assume cs:cseg, ds:cseg, ss:cseg, es:cseg
org 100h
begin:
mov ah,10h
int 16h
cmp al,27
je _begin_quit
mov dh,ah
mov dl,al
MOV ax,0
mov al,dh
mov bl,10h
div bl
mov n1,al
mov n2,ah
MOV ax,0
mov al,dl
mov bl,10h
div bl
mov n3,al
mov n4,ah
call _n1
call _n2
call _n3
call _n4
add n1,30h
add n2,30h
add n3,30h
add n4,30h
mov ah,9
mov dx,offset n1
int 21h
JMP BEGIN
_begin_quit:
int 20h
;---procedures---
_n1proc near
cmp n1,9
jbe q1
add n1,7
q1:
ret
_n1endp
_n2proc near
cmp n2,9
jbe q2
add n2,7
q2:
ret
_n2endp
_n3proc near
cmp n3,9
jbe q3
add n3,7
q3:
ret
_n3endp
_n4proc near
cmp n4,9
jbe q4
add n4,7
q4:
ret
_n4endp
;---data---
n1 db 0
n2 db 0
n3 db 0
n4 db 0
k db ' $'
cseg ends
end begin
код цифр на 30h больше их значенния
код букв(A..F) больше их значения на 37h
[s]Исправлено:
Andreich, 22:43 21-11-2003[/s]