PREGUNTAS CONTESTADAS - Ensamblador

 Hay un total de 123 Preguntas.<<  >> 

    Pregunta:  36146 - CREACION DE UN MENU
Autor:  Quique Castro
Para aplicacion sobre un microcontrolador, pero me vale cualquier estandar que haya para ello. Se trata de crear un modulo, que maneja menus navegables semejantes a los de un telefono movil sobre un display, que tiene que ser capaz de salir del modulo para realizar otras tareas cualesquiera y sea capaz de volver a la parte del modulo o bucle donde estaba sin perder la posicion de menu en la que estaba y que además, sea facil la inclusion o exclusion de nuevos menus (y submenus). Comprendo la dificultad de mi duda, pero hasta ahora no encuentro ninguna referencia a como abordar este problema.
Muy agradecido.
  Respuesta:  Juan Manuel Mar
Que tal:

Bueno yo hice un menú bastante genérico pero en c++ (borland), que no se si te sirve pero igual y te da una idea.
Lo que hice fue poner un ciclo, concretamente con el do...while, mientras no presionara enter, lo que hice fue mostrar las posibles opciones a elijir, ya sabes, 1.- opcion 1, 2.- opcion 2, etc y usando las funciones del bios para leer el estado del teclado determinas que tecla se presiono, si fue por ejemplo ARRIBA pues pones una bandera indicando el nuevo valor seleccionado y hacer es que se repita el ciclo pero marcas esa opcion, ABAJO lo mismo, repites el ciclo (borra la pantalla cada vez que repitas el ciclo para evitar que se empalme todo) y marcas la opcion bajo la actual, si son numeros pues lo mismo, marcas la opcion señalada y hay te la llevas, si no es nada (tecla válida) la ignoras, ahí vas a estar dando vueltas mientras no elijas nada, claro que sería conveniente que cada vez que marques algo lo pongas en una variable para recuperarlo posteriormente y hacer algo con esa opción.
  Respuesta:  Javier R
Hola!! La creación de un menú en ensamblador es bastante laboriosa, pero muy gratificante. Lo que tienes que hacer primero es manejar una tabla de estados y un registro de estado, todo ello bajo una máquina de estados. Cada estado en tu tabla tendrá un número (el cual será manejado en el registro de estado), y dependiendo de qué tecla se pulsó vas a ir a ese estado; cómo se hace la bifurcación depende del micro que estés usando, yo lo hice en un COP8SGR de National Semiconductor(manejé 4 teclas y 25estados). Por ejemplo, vamos a manejar 3 estados y 2 teclas, y obviamente lo vas a poder expandir:

Estado Acción Botón A Acción Botón B
0 Inicio Apagar
1 Configurar Entrar clave
2 Transmitir Recibir

al inicio de tu código debes hacer el registro de estado (RE)

RE = 0

para que apunte al primer estado,

luego creas dos tablas (o una para cada tecla)

Tabla A
0 Inicio
1 Configurar
2 Transmitir

Tabla B
0 Apagar
1 Entrar clave
2 Recibir

Después de decodificar el estado del teclado, si la tecla presionada fue
la A entonces te vas a la tabla A, y según RE te vas al estado al cual apunte, en este caso a Inicio. Dentro de Inicio haces RE=al siguiente estado que quieras que tome, p.ej RE=1, así la siguiente ves que entres a la tabla A irá al estado 1, y así sucesivamente, y lo mismo con la otra tabla, y con cuantas tablas quieras, NO ES TAN DIFICIL. Get fun

    Pregunta:  36658 - COMO GENERO UN ARCHIVO EXE
Autor:  jerry escamilla
Como hacer para generar un archivo executable que me permita cambiar la contaseña de mi pc en forma local, por medio de ese archivo...
  Respuesta:  Oscar Adrian Gzz Gamboa
Hola amigo,primero que nada para generar un ejecutable obiamente tienes que tener algun copilador para archivos ASM yo te recomiendo TASM,la rutina para crear un ejecutable consiste en dos pasos.
1 ya creado el archvo ASM
TASM Miaplicacion.asm
2 te creara esta ultima rutina un archivo OBJ.
TLINK / v Miaplicacion.obj
ASI TE CREARA EL .EXE

Ahora para cambiar la contrasena de tu pc debes de de usar las Interrupciones int12 , int13 ,int 14 que son las que llaman a BIOS que es donde tu cambiaras tu contrasena,

    Pregunta:  39371 - ¿COMO PUEDO CAMBIAR UN LOGO O EN UNA BIOS POR ENSAMBLADOR ?
Autor:  Jorge morales
Necesito Saber Como puedo cambiar un logo de una Bios .
Que supongo esta hecha en Assembler o en otro Lenguaje
O sino como puedo llevarlo a otro Lenguaje o si Exiten algunos
programas... Gracias....
  Respuesta:  Carlos Christian Molina Vega
Si la imagen esta en ROM, no hay nada que puedas hacer. Si esta en EPROM o EEPROM (muy dificil) podrias reprogramar el BIOS. Ademas el problema del codigo del bios es que siempre se ejecuta de primero y no te la oportunidad de cargar tu propio codigo antes.

    Pregunta:  41663 - COMPILANDO TURBO ASSEMBLER
Autor:  Hans Roht
Hola!!
Necesito saber cómo hacer para compilar un archivo .ASM con Turbo Assembler 4.1...

Hace mucho estoy probando y todavia no lo logro... agradeceria MUCHISIMO a quienes me ayudaran!!!
  Respuesta:  Germain Hernandez Gomez
hay dios mio, por que responden de una manera que no te aclaran nada, , mira
el programa lo editas el cualquier editor de texto, yo uso el edit del msdos, tecleo edit , a la hora de guardar el programa lo guardo con extension .asm
ejemplo: patitofeo.asm

luego si usas el tasm el archivo .obj se crea asi

tasm patitofeo.asm;

si es el masm tecleas asi

masm patitofeo.asm;

luego, si no te marca ningun error de sintaxys
el archivo .exe lo creas asi

si tu enlazador es el link teclas

link patitofeo.obj;

si es el tlink

tlink patitofeo.obj;

y ya se creo tu patitofeo.exe

nota; el masm, el tasm, el link o el tlink lo debes de pegar en la carpeta eon donde se te guardo el archivo patitofeo.asm, por lo comun basta con ver el simbolo del sistema y checas cual es la carpeta que se esta usando

ejemplo
C:\Documents and Settings\Propietario>

en la subcarpeta propietario pego el ensambaldor y el linkeador que uso

espero que me hayan entendido, si no, ps, hagan lo que le dijo el otro chavo, si es que le entendieron por que yo nop jeje -_-! =_o
  Respuesta:  Fernando Carriquiry
Mira, si utilizas el tasm,compilas asi tasm /jmasm 'nombre'
el tasm se encuentra en esta pagina.

    Pregunta:  43346 - COMUNICACION ENTRE TASM Y UN PIC18F258 POR EL PUERTO SERIAL
Autor:  Alex Urena Cordero
Tengo un carro de juguete que se maneja por medio de un microcontrolador PIC18F258, el cual ya ha sido programado previamente, en su propio lenguaje ensamblador, para hacer un numero de fuciones. Lo que ahora debo hacer es controlar este carro mediante el puerto serial de una PC, enviando seNales desde ella hasta el PIC, ya que este tambien esta conectado a un puerto serial, en realidad lo que necesito es saber si alguien ha tenido experiencia en este tipo de aplicaciones para que me brinde acesoramiento sobre las instrucciones que debo utilizar para cada lenguaje, y como puedo establecer una comunicacion efectiva entre ambos dispositivos. Gracias.
  Respuesta:  Willy Gonzalez
Para crear la conexion entre en PIC y el PC debe estar configurado el usart del PIc de lo contrario no hay condiciones de comunicacion a demas debes asegurarte de utilizar el RS232, la forma mas secilla es utilizando el Hiperterminal y las instrucciones para habilitar el PIC en modo conexion serial las encientrar el microchip en su manual.
  Respuesta:  Ronny Rodríguez
Hola Alex,

Si lo que quieres es enviar caracteres a traves del puerto serial, lo más simple sería que usaras el software que trae windows, se llama Hyperterminal, suele encontrarse como herramienta añadida a cualquiera de las versiones de windows.
Ahora si quieres hacer tú mismo una aplicación que maneje el puerto serial, te recomiendo que uses visual basic, este contiene una serie de controles muy fáciles de implementar, creo que se llama MScomm si mal no recuerdo. En fin, casi todos los lenguajes te proporcionan un mecanismo para enviar caracteres a diferentes velocidades por el puerto serial o comunmente llamado COM.
Pero como tu pregunta esta en la seccion de ensamblador, debo comentarte que para manejar el puerto serial existen un par de instrucciones que son IN y OUT. Pero es un poco largo de explicar, a este par de instrucciones debes pasarle la direccion del puerto y el valor a escribir en el caso de OUT.

cualquier cosa, si tienes interes en el código en ensamblador, avisame!!!
saludos

    Pregunta:  43359 - CAMBIAR FECHA DE FABRICA DE BIOS
Autor:  dan buc
necesito cambiar la fecha de fabricacion de una bios .gracias
  Respuesta:  Francisco Araña Dúo
Hasta donde yo sepa, la fecha del bios, es solo de lectura, y si se puede modificar la eprom, tambien cambiaras la fecha del bios

\>debug
d ffff:0005 8

esta sentencia te mostrara la fecha pero te daras cuenta q esta en la parte superior de memoria donde solo es lectura

    Pregunta:  43654 - ASEMBLER 80188 (.ASM, .BIN O .HEX?)
Autor:  Hector Ballesteros
Buenas.
Estoy realizando una placa de evaluacion con un micro 80188 su memoria ram y una eeprom 28c256, ademas de unos cuantos perifericos.

Tengo un problema a la hora de crear el codigo del programa y meterlo en la eeprom. No se que que formato de fichero es el que tengo que grabar en la eprom. si: *.asm, *.hex (intel) o algun otro y con que programas puedo generarlos y convertirlos.
Por si sirve de ayuda, la eprom la grabo con el GALEP 32.
Gracias
  Respuesta:  jose martinez
debe grabarlos en extencion de fichero .hex en la memoria epprom

    Pregunta:  43889 - COMO REPRODUCIR SONIDOS EN ASM
Autor:  Juan Guillermo Gallego Garcia
Hola.
Quisiera Saber como puedo reproducir sonidos a traves de la bocina o la tarjeta de sonido de manera estandar.
Tengo la frecuencia y duracion del sonido pero no se donde deben estar estos parametros ni que interrupcion utilizar.
  Respuesta:  Gabriel Amezquita
la tarjeta de sonido NO es estandar, cada fabricante la maneja de manera diferente, tendrias que buscar como activar TU tarjeta de sonido en especial.
si es ISA tienen buenas posibilidades de hacerlo, de ser PCI, tendrias que hacer un driver solo para poder comunicarte con el.
lo unico estandar es la bocina interna del pc
pero no creo que quieras programarlo, es demasiado complejo, tendrias que acceder via OUT,IN al puerto del PROGRAMER TIMER, ( no recuerdo cual es el puerto). establecer la frecuencia y duracion del timbre, ( estoy suponiendo que lo harias en MSDOS, ya que windows NO te permite acceder a el)
ademas de que es muy primitivo el sonido que podrias generar,
¿has visto juegos que usan la bocina del PC? es en verdad primitiva

    Pregunta:  44233 - PROGRAMAS RESIDENTES...
Autor:  Jose
Por favor nesecito crear un programa sesidente que sea llamado desde una secuencia de teclas, si alguien puede ayudarme por favor. lenguaje ensamblador.
  Respuesta:  Benjamin Maggi
Mira vas a tener que hokear o engancharte de las interrupciones de teclado casi seguro, una vez echo esto cada vez que aprieta una tecla la interrupcion de tu residente va a ejecutarse aca te paso un link de la pagina www.programerheaven.com
http://www.programmersheaven.com/d/click.aspx?ID=F23177&AltURL=2
El programa de ejemplo se engancha de la int 9 que lee un caracter a la vez asi que vas a tener que pensar como leer la secuencia ... podes hacer varia comparaciones
si con este ejemplo no podes avisame por correo

    Pregunta:  44763 - MEDIDAS DE TIEMPO PRECISAS
Autor:  Luis Miguel
Necesito tomar medidas de tiempo de como minimo del orden de milisegundos, haciendo uso para ello del timer, pero sin cambiar su frecuencia, me valdria un proceso que estuviese leyendo directamente el regstro del timer durante todo el rato, pero por mas que lo intento no soy capaz, no tengo grandes conocimientos en ensamblador. Gracias
  Respuesta:  Miriam R.J.
Si he entendido bien lo que has escrito, ¿quieres leer algo del rtc, no?
Creo que lo debes hacer es una escritura (instrucción OUT) en el puerto 70h de la dirección de la posición que deseas leer y luego hacer una lectura (instrucción IN) del puerto 71h. Esos puertos están relacionados con el rtc. Supongo que metiendo esas dos instrucciones en un bucle y con alguna cosa más te puede ir. La interrupción del reloj es la 70h, y dicho reloj emitía pulsos cada 18'2 segundos, creo recordar...

De todas formas, te recomiendo que leas el libro que está colgado en esta página: http://atc.ugr.es/docencia/udigital/ es gratuito, y muy cómodo de consultar vía web

Es muy útil, muy completo, me ayudó en su momento y está todo bastante bien explicado. No se si he conseguido ayudar en algo o liarte más de lo que estabas, espero que no. Que tengas suerte!!

|<  <<  3 4 5 6 7 8 9 10 11 12 13  >>  >|