Ensamblador - Como convertir un numero a binario y usar nibbles.

 
Vista:
sin imagen de perfil

Como convertir un numero a binario y usar nibbles.

Publicado por Antonio (7 intervenciones) el 03/08/2015 23:02:44
Hola expertos debido a mi poco conocimiento en el tema sobre el lenguaje ensamblador , les solicito ayuda para saber como resolver un ejercicio, en el cual mis principales dudas son:

Como insertar el numero de 3 cifras por medio del teclado
Convertir ese numero a binario y mostrarlo en pantalla
El resultado en binario tiene que estar separado en "nibbles"
¿Que es un nibble?, les muestro el enunciado.

Ensamblar un programa que reciba por teclado un número entero positivo de tres cifras y lo muestre en binario (separado en nibbles) en la pantalla.

Espero contar con su valioso apoyo, de ante mano muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Como convertir un numero a binario y usar nibbles.

Publicado por MSH (120 intervenciones) el 05/08/2015 00:24:04
"Espero contar con su valioso apoyo" - Pues cómprenme una ficha para la Appstore. Saludos ;)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
;-------------------------------------------
;  Nibbles, nibbles everywhere
;-------------------------------------------
.model small
 
.data
 
carry db 0dh,0ah,'$'
msn db 'Escribe un numero',0dh,0ah,'$'
cinco db 5
cadena db 4 dup (' ')
nibble db '00','0000 ','0001 ','0010 ','0011 ','0100 ','0101 ','0110 ','0111 ','1000 ','1001 '
 
.code
 
inicio:
 
mov ax,@data
mov ds,ax
push ds
pop es
 
lea dx,msn
mov ah,09h
int 21h
 
mov ah,0ah
lea dx,cadena
int 21h
 
 
lea dx,carry
mov ah,09h
int 21h
 
;-------conversion
 
xor ax,ax
xor dx,dx
 
lea si,cadena + 2
 
mov cx,0003
j01:
lea di,nibble + 2
push cx
mov al,[si]
xor al,30h
mul cinco
add di,ax
call imprime
pop cx
inc si
loop j01
 
mov ax,4c00h
int 21h
 
;----------------------
imprime proc near
mov cx,0005
ca2:
mov dl,[di]
mov ah,02h
int 21h
inc di
loop ca2
xor di,di
ret
imprime endp
;-----------------------
 
end inicio
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Como convertir un numero a binario y usar nibbles.

Publicado por Antonio (7 intervenciones) el 10/08/2015 00:37:32
Muchísimas gracias por tu apoyo mi estimado, observo varios detalles que no tenia ni idea, saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar