Всем привет. Программа выводит область памяти биоса(работает верно) незнаю как сделать выход из программы при нажатии на клавишу esc..подскажите пожалуйста кто знает.
codesg segment para 'code' assume cs:codesg,ds:codesg,ss:codesg,es:codesg org 100h begin: jmp main tabl db '0123456789ABCDEF' main proc near mov cx,25000 mov ax, 0 mov es, ax
m3: push cx mov ah,02 mov bh,00 mov dh,0 mov dl,0 int 10h mov si,0400h mov cx,16 m2: push cx mov cx,16 m1: push cx lea bx,tabl mov al,es:[si] and al,0f0h shr al,4 xlat mov ah,09h mov bh,00 mov bl,07h mov cx,1 int 10h mov ah,03 mov bh,00 int 10h inc dl mov ah,02h mov bh,00 int 10h lea bx,tabl mov al,es:[si] and al,0fh xlat mov ah,09h mov bh,00 mov bl,07h mov cx,1 int 10h mov ah,03 mov bh,00 int 10h inc dl mov ah,02h mov bh,00 int 10h mov ah,09h mov al,' ' mov bh,00 mov bl,07h mov cx,1 int 10h mov ah,02h mov bh,00 inc dl int 10h inc si pop cx loop m1 mov ah,03 mov bh,00 int 10h mov ah,02 mov bh,00 inc dh mov dl,0 int 10h pop cx loop m2 pop cx dec cx cmp cx,0 je ex
mov ah, 0 add dx, 91 int 1Ah add dx, 91 mov bx, dx repeat: int 1Ah cmp dx, bx jne repeat
jmp m3 ex: ret main endp codesg ends end begin
xds
14.12.2009 17:21
Перед выходом:
pause: mov ah,8 int 21h cmp al,27 jne pause
Не, все хуже.
xds
14.12.2009 17:53
add dx, 91 mov bx, dx repeat: ;------------------------------ mov ah,1 int 16h jz no_key xor ax,ax int 16h cmp al,27 je ex jmp repeat no_key: xor ax,ax int 1Ah cmp dx, bx jb repeat ;------------------------------ jmp m3 ex: ret
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.