Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 07.11.2010, 16:18   #1
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Адрес: UA
Сообщений: 166
Репутация: 18
Вопрос пом. разобраться в программе по выводу скан-кода

Вот нашел программу по выводу скан-кода нажатой клавиши, хочу разобраться в ней:


1 столбец - это сивольное название клавиши
3 ст. - сам код нажатой клавиши
а что отображается в 2 столбце ?

Вот код:
Код:

sseg segment stack
db 128 dup(?)
sseg ends

dseg segment
msg  db 'Najmite klavishu',10,13,'$'
txt     db 10,13,'$'
hex   db '0123456789ABCDEF'
dseg ends

cseg segment
assume ss:sseg,ds:dseg,cs:cseg
start:
mov ax,dseg
mov ds,ax

mov ah,9 ;выводим приглашение
mov dx,offset msg
int 21h

nachalo:
mov ah,0 ; вводим клавишу
int 22
cmp al,1bh ; если это esc то выходим
je konec
     push ax
mov dl,al
mov ah,6
int 21h

mov ah,6 ; выводим пробел между данными
mov dl,' '
int 21h
     pop ax
     push ax
shr al,4
mov ah,0

mov si,ax
mov dl,[si+hex]
mov ah,6
int 21h
     pop ax
     push ax
and al,00001111b
mov ah,0
mov si,ax
mov dl,[si+hex]
mov ah,6
int 21h
mov ah,6 ;вывод 'h'
mov dl,'h'
int 21h

mov ah,6
mov dl,' ' ; выводим пробел между данными
int 21h
     pop ax
     push ax
shr ah,4
mov al,ah
mov ah,0
mov si,ax
mov dl,[si+hex]
mov ah,6
int 21h
     pop ax
mov al,ah
mov ah,0
and al,00001111b
mov si,ax
mov dl,[si+hex]
mov ah,6
int 21h

mov ah,6
mov dl,'h'
int 21h
mov ah,9
mov dx,offset txt
int 21h
jmp nachalo

konec: ; выход из программы
mov ah,4ch
int 21h
cseg ends 
end start

Еще прожка не реагирует на Shift, Alt, CapsLock, Pause, Print Screen - тоисть для этих клавиш нет скан-кода или как ?

Последний раз редактировалось Alex1991; 07.11.2010 в 16:52.
Alex1991 вне форума   Ответить с цитированием
Старый 07.11.2010, 16:31   #2
Arigato
СуперПрограммист
СуперМодератор
 
Аватар для Arigato
 
Регистрация: 27.07.2008
Адрес: Россия РФ Регистрация: 27.07.2008
Сообщений: 14,102
Репутация: 3583
По умолчанию

http://www.codenet.ru/progr/dos/int_0015.php
__________________
E-Mail: arigato.freelance@gmail.com
Arigato вне форума   Ответить с цитированием
Старый 07.11.2010, 18:01   #3
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 24,364
Репутация: 5308
По умолчанию

вот, поиграйтесь с программкой, может более понятно станет, как там всё "функцилирует" внутри...
Цитата:
Маленькие программки KN

Copyright (C) Nikita E.Korzun (KN) VANTALA Ltd.

KNKBDI
Вытаскивает из клавиатуры все, что только можно. Очень наглядно.
Вложения
Тип файла: rar KN.rar (4.7 Кб, 28 просмотров)
Serge_Bliznykov на форуме   Ответить с цитированием
Старый 07.11.2010, 21:04   #4
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Адрес: UA
Сообщений: 166
Репутация: 18
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
вот, поиграйтесь с программкой, может более понятно станет, как там всё "функцилирует" внутри...
благодарю
Alex1991 вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
разобраться в программе fredwriter Помощь студентам 6 10.10.2010 10:47
Назначение строки кода в программе ArniLand Общие вопросы .NET 1 30.03.2010 16:31
Не разберу скан кода по встраиваемым функциям fs444 Общие вопросы C/C++ 3 22.03.2010 23:06
Считывание скан кода IgorKr Assembler 6 25.02.2009 01:47
Чем отличается скан-код от виртуального кода клавиши? The_Darkness Помощь студентам 2 18.07.2008 17:01


17:23.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru