Problem z wyświetlaniem kodu ascii w hex znaków wczytanych z klawiatury

0

Witam, mam problem z programem wyświetlającym kody ascii w hex znaków wczytanych z klawiatury.
Na razie udało mi się wyświetlić znaki, które wczytuje z klawiatury. Nie wiem teraz jak zrobić żeby zamiast tych znaków
program wyświetlał mi ich kody ascii w hex.

 


.align 32

SYSEXIT      = 1
SYSREAD      = 3
SYSWRITE     = 4
STDIN        = 0
STDOUT       = 1
EXIT_SUCCESS = 0


.data
	bufor: .space 20, 0

.text
	msg: .ascii "Podaj tekst!\n"
	msg_len = . - msg

.global _start

_start:
	mov $SYSWRITE, %eax    			
	mov $STDOUT, %ebx
	mov $msg, %ecx
	mov $msg_len, %edx
	int $0x80
	

	mov $SYSREAD, %eax			
	mov $STDIN, %ebx
	mov $bufor, %ecx
	mov $20, %edx
	int $0x80
	mov %eax, %edi		
		
	mov $SYSWRITE, %eax
	mov $STDOUT, %ebx
	mov $bufor, %ecx
	mov %edi, %edx
	int $0x80

	movl $SYSEXIT, %eax
	movl $EXIT_SUCCESS, %ebx
	int $0x80
0

z kim masz laborki z ak2? :D

podpowiedź: przenoś po bajcie z bufora do jakiegoś rejestru i używaj:

shrb $4, %bl

(...)

andb $15, %bl

potem sprawdzasz, czy wartość rejestru jest mniejsza niż 10. jak tak, to dodaj '0' (48), jak nie, to dodaj 'A'-10 (55). potem przenosisz to do bufora wyjściowego

1 użytkowników online, w tym zalogowanych: 0, gości: 1