Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.11.2010, 16:33   #1
Alex1991
Форумчанин
 
Аватар для Alex1991
 
Регистрация: 18.10.2008
Сообщений: 166
Вопрос Скан-код нажатой клавиши в dec(десятичной системе)

Как можно несложно получить скан-код нажатой клавиши в dec(десятичной системе) ?
Просто смотрел на разных форумах то везде в делают в Hex системе .
Я ориентируюсь по этой таблице http://www.ntlib.chat.ru/ware/tables/scan.htm

Если судить по этой таблице то скажите есть скан-Код у клавиши все таки один ? или же два при нажатии(make) и отпускании(breake) ? Просто на одних сайтах, один код, а на других сайтах два(соответственно make, breake) Неочень понятно где все таки правильно ???

Вот впринципе сварганил код, но выводит неправильно:
например: нажимаем клавишу s должно вывести 31 а выводит 13 тоисть меняет цифры местами почему так ?

Код:
ideal
	model small     
	stack 100h     

	dataseg			

	codeseg		


Start:	mov ax, @data	
	mov ds, ax     
	mov es, ax      

	xor ax,ax

	mov ah, 00H
	int 16h
		;теперь выведем регистр АН
	call val

; Считывание символа с клавиатуры. Для того чтобы увидеть результат	
	mov ah, 1	
	int 21h		

;выход проги
Exit1:	mov ax, 04c00h	
			
 	int 21h	
	
proc	val ;процедура вывода АН
		mov	si, offset buff+3
		mov	bl, 10
val2asc:	
		cmp	ah, bl
		jb	exit
		mov	al, ah
		xor	ah, ah
		div	bl
		or	al, 30h
		mov	[si], al
		dec	si
		jmp	val2asc
exit:		
		or	ah, 30h
		mov	[si], ah
print:		
		lodsb
		mov	dl, al
		mov	ah, 02h
		int	21h
		cmp	si, offset buff+3
		jna	print
		ret
buff		db	3 dup (?)
endp	val		


	end Start	; Конец программы. Начать выполнение программы
			; с метки Start

Последний раз редактировалось Alex1991; 11.11.2010 в 19:06.
Alex1991 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
скан-код клавиши CraZZZy-GameRRR Общие вопросы Delphi 12 26.05.2010 13:44
Анализ нажатой клавиши monty "2" Помощь студентам 2 21.04.2010 17:42
код нажатой клавиши galaid Общие вопросы Delphi 4 24.05.2009 20:03
вывести код нажатой клавиши fclmhooligan JavaScript, Ajax 0 22.10.2008 09:32
Чем отличается скан-код от виртуального кода клавиши? The_Darkness Помощь студентам 2 18.07.2008 17:01