Está en la página 1de 4

Captura por teclado y mensajes Objetivos: Analizar el proceso de captura de informacin por teclado Analizar el proceso para mostrar

ar mensajes Utilizar interrupciones de software para mostrar informacin en pantalla y leer informacin del teclado Escribir programas en lenguaje ensamblador del MSX88 Analizar el flujo de informacin entre los componentes del C U Definicin de variables de datos Se pueden almacenar !ariables en la memoria principal" las !ariables pueden tener diferente longitud #$ #ato tipo $yte #% #ato tipo %ord &' $ytes( )a sinta*is para almacenar !ariables en memoria es+ ,ombre #$ -Microcomputadoras ,umero #% ./0 En el caso de la !ariable nombre" se define como tipo $yte y almacena en la memoria principal la cadena de caracteres 11 Microcomputadoras 11 " cada car2cter se almacena como un byte" es decir ocupa una localidad de memoria y en esa localidad de memoria se almacena el !alor ASC33 de la letra en cuestin En el caso de la !ariable ,4mero" esta es de tipo %ord &' $ytes( y se almacena el n4mero ./0 utilizando ' posiciones de memoria" 5uedando el !alor ./66 al guardarse como little endian7 Desarrollo de la prctica Ejercicio #1. Escritura de datos en pantalla ara poder mostrar datos en la pantalla de comandos del MSX88 debemos primero definir la informacin en el segmento de datos y posteriormente mostrarla por medio de la interrupcin de software 3,8 9" captura el siguiente cdigo en un programa con nombre muestra7asm :;< =666> ME, #$ ?Microcomputadoras11? #$ ? 3ngenieria en Sistemas Computacionales11? #$ ? U,38EC Atizapan11? @3, #$ A :;< '666> M:B $X" :@@SE8 ME, M:B A)":@@SE8 @3,1:@@SE8 ME, 3,8 9 >)8 E,# Anlisis del cdigo anterior En $X se almacena el !alor de la posicin de memoria donde inicia la !ariable ME,

Captura por teclado y mensajes En A) se almacena el !alor del numero de caracteres 5ue tiene la cadena ME, 3,8 9" utiliza los !alores contenidos en $X y A) para mostrar la cadena en el monitor Al ejecutarse la 3,8 9" se almacenan en la pila el !alor del registro de banderas y el !alor del registro 3 Ensambla y liga el programa para generar el arc0i!o muestra7eje Ejecuta el programa muestra 7eje en el software MSX88 y !erifica su correcta operacin

1. Indica a continuacin cual es el cdigo AS II de los siguientes caracteres a. !: "D b. s: #$ c. %: &' d7 (: &D e. : ") '7 Modifica el programa para 5ue muestre tu nombre al final de la lCnea -U,38EC Atizap2nD-" identifica a continuacin cuales son los caracteres ASC33 de las letras 5ue componen tu nombre7 EE '6 /A FF /= /E Ejercicio #&. *ectura de datos por +edio del teclado ara leer datos desde el teclado se utilizara la instruccin 3,8 E" esta instruccin al ejecutarse solicita 5ue se oprima una tecla y el !alor ASC33 de la tecla acti!ada se almacena en el registro A)" captura el siguiente cdigo en un programa con nombre leer7asm :;< =666> ME, #$ ?Microcomputadoras 11 ? #$ ? U,38EC Atizapan 11 ? #$ ?3ngenieria en Sistemas Computacionales 11? #$ ? CA 8U;A U, ,UME;:+ ? @3, #$ A :;< =F66> ,UM #$ A :;< '666> M:B $X":@@SE8 ME, M:B A)":@@SE8 @3,1:@@SE8 ME, 3,8 9 M:B $X":@@SE8 ,UM 3,8 E M:B A)"= 3,8 9 M:B C)",UM >)8 E,# Anlisis del cdigo anterior

Captura por teclado y mensajes En la localidad de memoria =F660 se define la !ariable ,UM de tipo $yte En $X se almacena el !alor de la posicin de memoria donde inicia la !ariable ME, En A) se almacena el !alor del numero de caracteres 5ue tiene la cadena ME, 3,8 9" utiliza los !alores contenidos en $X y A) para mostrar la cadena en el monitor Al ejecutarse la 3,8 9" se almacenan en la pila el !alor del registro de banderas y el !alor del registro 3 A0ora se usa $X para almacenar el !alor de la posicin de memoria donde inicia la !ariable ,UM Al ejecutarse la 3,8 E" se almacenan en la pila el !alor del registro de banderas y el !alor del registro 3 " esta instruccin solicita se oprima una tecla" el !alor ASC33 de la tecla acti!ada se guarda en la localidad de memoria referenciada por $X" en este caso =F660 Se guarda en Al el !alor = para indicar la longitud de la cadena a mostrar en pantalla por medio de la instruccin 3,8 9 @inalmente se copia el !alor de la !ariable ,UM en el registro C) Ensambla y liga el programa para generar el arc0i!o muestra7eje Ejecuta el programa muestra 7eje en el software MSX88 y !erifica su correcta operacin

1. E,plica c+o opera una interrupcin de soft-are &. E,plica para .ue utili/an el registro 01 las instrucciones I23 # e I23 4 $. E,plica para .ue se utili/a la pila de registros en este progra+a ". E,plica por.ue al final de la ejecucin de la interrupcin de soft-are se recupera la infor+acin .ue se al+aceno en la pila de registros. Ejercicio #$. *ectura de datos por +edio del teclado en el progra+a de +ultiplicacin de dos valores positivos Modifica el programa 5ue creaste del programa para multiplicar ' n4meros enteros positi!os &practica anterior( para 5ue permita la captura por teclado de los n4meros a utilizar en la rutina de multiplicacin7 Considera 5ue el !alor ASC33 de los n4meros capturados no coincide con su !alor numGrico real" por lo 5ue debes realizar su con!ersin antes de proceder a utilizarlos en la rutina de multiplicacin Certifica 5ue el programa opere en forma correcta

Ejercicio #". *ectura de datos por +edio del teclado en el progra+a de divisin de dos valores positivos Modifica el cdigo del programa para di!idir ' n4meros enteros positi!os" para 5ue permita la captura por teclado de los n4meros a utilizar en la rutina de di!isin7 Certifica 5ue el programa opere en forma correcta

Captura por teclado y mensajes

Ejercicio #). Anali/ar el funciona+iento del siguiente progra+a :;< '666> M:B CX"6 M:B AX". CA)) C3C): >)8 E,# C3C):+ :;< .666> CM AX"6 HI @3, A## CX"AX #EC AX CA)) C3C): ;E8

@3,+

a( E*plica 5ue 0ace el programa b( JKue representa el !alor final de CXA c( Modifica el programa para 5ue el !alor inicial de AX en la seccin de :;< '666>" se capture por teclado