• Sábado 21 de Septiembre de 2024, 02:56

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - olberillo

Páginas: [1]
1
ASM (Ensamblador) / Conversion Cadena A Ascii
« en: Jueves 23 de Noviembre de 2006, 03:36 »
Hola, Idol te luciste con esa asesoria!!!!. Eres un MAestro!!!

Otro Problemilla es tratar de unir dos caracteres capturados en pantalla y que me trate de unir ambos, para luego mostralo en pantalla como su simil en Ascii...

No se si me podrian colaborar diciendome un metodo que manipule codigos ascii desde assembler, algun tipo de funcion, no se como me podrian colaborar...


Te agradezco

2
ASM (Ensamblador) / Re: Manejo De Caracteres
« en: Miércoles 22 de Noviembre de 2006, 23:32 »
Tengo esto realizado, y compare el caracter capturado si es un numero y funciona...pero en las otras comparaciones, me genera bastantes errores!



AQui lo envio para que me colabores...porfa...


cr EQU 13
lf EQU 10
 print macro arg1
   push ax
   push dx
   lea dx,arg1
   mov ah,9
   int 21h
   pop dx
   pop ax
 endm
 read macro arg1
   push ax
   push dx
   lea dx,arg1
   mov ah,10
   int 21h
   pop dx
   pop ax
 endm
dades SEGMENT PARA PUBLIC
   missatge DB 'Digita el caracter',cr,lf,'$'
   mis1    DB 'es numero',cr,lf,'$'
   mis3    DB 'ES MIN',cr,lf,'$'
   mis4    DB 'ES may',cr,lf,'$'
   maxcad DB 30
   lencad DB 0
   cadena DB 30 DUP(0)
   numero DB  5 DUP(0),'$'
   linia_blanc DB cr,lf,'$'
   missatge2 DB 'Desea salir?',cr,lf,'$'
   maxcad2 DB 2                    ;longitud máxima.
   lencad2 DB 0                    ;longitud leida.
   cadena2 DB 2 DUP(0)             ;buffer que contendrá el texto introducido.

blanc  DB  cr,lf,'$'



dades ENDS
codi SEGMENT PARA PUBLIC 'code'
main PROC FAR
ASSUME CS:codi,DS:dades,SS:pila,ES:dades
mov ax,dades
mov ds,ax
mov es,ax

inicio:
   print missatge         ;pide que se introduzca un mensaje y lo guarda en maxcad
   read maxcad
   print linia_blanc      ;imprime linea en blanco
   mov bx,0         ;pone el registro bx a 0
   
pushpila:
   mov al, cadena[bx]   ;movemos la cadena introducida a al
   push ax
   inc bl
   cmp bl, lencad      ;hacemos la comparacion para que el proceso se repita mientras bl no sea 0
   jne pushpila      
   
   mov bx, 0

caracter:

cmp numero[bx],0      ;Comprueba posicion a posicion que el caràcter introducido es un
   jb  error       ;numero decimal, por eso verifica si esta entre 0 y 9 si no esta
   cmp numero[bx],9      ;salta al bucle error.
   ja  error

   inc bl
   cmp bl,lencad
   jne caracter

   ; si no salta a numeros


error:                  
   print blanc
   print mis1
   print blanc
   jmp salir



salir:
   mov ax,4c00h
   int 21h
main ENDP
codi ENDS
pila SEGMENT PARA STACK 'stack'
DB 128 DUP(0)
pila ENDS
END main

3
ASM (Ensamblador) / Manejo De Caracteres
« en: Miércoles 22 de Noviembre de 2006, 15:48 »
Alguien ke me enseñe un codigo de como determinar si un caracter es Numero, min o MAyuscula.

Otro es ke al digitar dos caracteres de hexa me enseñe su valor en asci.
Gracias

Olber Utria

olberillo@hotmail.com

Páginas: [1]