fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

cifras decimales de...
 
Avisos
Vaciar todo

cifras decimales de un DD

6 Respuestas
4 Usuarios
0 Reactions
6,087 Visitas
growdes
Respuestas: 2
Topic starter
(@growdes)
New Member
Registrado: hace 15 años

Hola soy un estudiante, de ingenieria
informatica de cienfuegos y necesito que me aclaren una duda de ensamblador si esta en
sus posibilidades, la cuestion es la sgte:
Se necesita separar las cifras decimales
de una doble palabra, a un arreglo de byte, lo que tengo hecho es lo sgte
Dato DD
54545H
ARR DB ?,?,?,?,?,?,?,?,?,?

Mov AX, word ptr Dato ; pongo el lsb
en ax
MOv DX, word ptr Dato +2 , pongo el msb en dx

Lo que me
sucede es que no puedo dividir por 10 o por 100 y luego por 1000 por que el cociente y
el resto no me cabrian en ax o dx, mi pregunta es como puedo extraer estas cifras
decimales del numero de doble palabra, saludos al experot y disculpe la molestia;
por favor responder tambien a:
inf200717@ucf.edu.cu

Responder
5 respuestas
fj_sanchez
Respuestas: 1083
(@fj_sanchez)
Ardero
Registrado: hace 18 años

Muy buenas, en primer lugar darte la bienvenida. En segundo lugar, yo no pondría mi mail así por la buenas en un foro, puede que se te llene de más SPAM el buzón de entrada. Y para concluir esta parte, la gente no va a molestarse en contestarte a tu correo, en cualquier caso contestarán al foro para que sirva a más gente.

Ahora con tu problema, no estaría de más decir con que micro se supone que trabajas, porque ensamblador no es algo universal, sino que depende de cada dispositivo. Por ejemplo, no se si trabajas con un micro de 8,16 o 32 bits, tampoco que instrucciones tiene, etc.

Así te digo que nadie te va a poder ayudar.
Un saludo.

Responder
dragonet80
Respuestas: 1328
(@dragonet80)
Ardero
Registrado: hace 17 años

Por los registros que hace referencia (AX, DX) supongo que se refiere a un micro compatible x86. Aquí tratamos sobre todo microcontroladores, y no tanto microprocesadores, pero quizá haya alguien que controle del tema. Yo hace muuuucho que ya no me acuerdo del ensamblador de los "PC".

Responder
fj_sanchez
Respuestas: 1083
(@fj_sanchez)
Ardero
Registrado: hace 18 años

Puff, entonces ni idea... Lo más parecido que yo he usado es el ensamblador del 68000, y de eso hace ya 2 o 3 añitos...

Responder
growdes
Respuestas: 2
Topic starter
(@growdes)
New Member
Registrado: hace 15 años

las instrucciones que puedo utilizar es del 80286 y 80386, se pueden utilizar los registros de proposito general como bx, ax, dx, y los indices como si, di, los extendidos tambien como eax, ebx etc, pero el problema no radica en eso y espero no molestarlos, yo se que la programacion en esnamblador depende de la arquitectura de la maquina pero lo que yo pregunto ejemplificado es lo sgte
supongamos que tengo un registro de 16 bits o sea AX y en la parte baja de AX se pone AL y en la parte alta AH que tienen respectivamente 8 bits, si quiero dividir AX por un numero entero decimal lo que hago es usar la instruccion DIV que pone el resultado en AL y el resto en AH pero si cuando voy a dividir el resultado o el resto es mas grande que AL o AH, se genera int 0 una interrupcion. ESto es lo que me pasa cuando voy a extraer las cifras decimales por Ejemplo:
el numero 65 001 decimal que cabe en un registro de 16 bits
si lo divido por 10 para extraerle la cifras de las decenas el resto
es muy grande y no cabe en el registro AL.
Entonces ¿como podria sacarles las cifras decimales a ese numero?

Responder
Página 1 / 2
Compartir: