SlideShare uma empresa Scribd logo
1 de 2
Baixar para ler offline
Taller de programación de sistemas.
                                                Diseño del ensamblador.

Práctica No. 2. Identificar modos de direccionamiento en la tabla de códigos de operación. Modificar el
programa anterior para que se busque el conjunto de instrucciones identificado e identificar cuales modos de
direccionamiento le corresponde a cada instrucción.


Descripción de la práctica.

1.       Este es un ejemplo de ASM para esta practica
               ORG         $AB

     ET1         SWI

                 ADCA              1,X

                 BRA               ET1

                 END


2.      Capturar en el bloc notas (o en otro editor de texto puro), el conjunto de instrucciones con el nombre
    TABOP.TXT. Sugerencias de captura:
Instrucción           Modo           Código             Total      de Total          de Suma total
(CODOP)               direcc.        máquina (hex) bytes                bytes      por de bytes
                                                        calculados      calcular
…
ADCA                  Imm8           (anotar      los (anotar       el (anotar       el (anotar      el
ADCA                  Dir            dígitos            número que número que número que
ADCA                  Ext            hexadecimales, se                  se               se
ADCA                  Idx            no anotar lo corresponda           corresponda      corresponda
ADCA                  Idx1           que está en por los bytes por los pares de sumar los
                      …              letras             que     están representados valores
                                     minúsculas)        representados en         letras numéricos
                                                        en hex)         minúsculas)      de las dos
                                                                                         columnas
                                                                                         anteriores)
…
BRA                   REL8
…
SWI                   INH
Entre las sugerencias para el tabop se le recomienda que revise el manual del CPU y tome en cuenta los
operando utilizados para cada modo de direccionamiento y así indicar REL8, REL9, REL16 en lugar de
únicamente REL

3.     Modificar el programa para que una vez que identifique las palabras por línea (ETIQUETA, CODOP,
     OPERANDO) se compare la palabra CODOP contra el TABOP.TXT.

Modificado por Michelle Torres. Octubre 2011                                                    Hoja 1 de 2.
a. Buscar el valor de la variable CODOP contra el TABOP.TXT. (abrir el archivo previamente)
              b. Si se encuentra:
                    i. Verificar si este CODOP debe o no debe de tener operando en base a la cantidad de
                         bytes por calcular. Si no cumple con este requisito indicar en el archivo de errores.
                    ii. Identificar el modo o modos de direccionamiento, el código calculado, la cantidad de
                         bytes calculados, por calcular y el total de bytes que le corresponden a este CODOP.
                    iii. En el archivo de instrucciones indicar el o los nombres de direccionamiento que le
                         corresponden a este CODOP.
              c. Si no se encuentra, indicar el error: código no encontrado u operando no válido según sea el
                 caso.

Ejemplo del P2ASM.INST:
 Linea ETQ         CODOP                       OPER   MODOS

 1            NULL           ORG               $AB
 2            ET1            SWI               NULL   INH
 3            NULL           ADCA              1,X    IMM8,   DIR,   EXT,   IDX,   IDX1,   IDX2, 
                                                      [D,IDX], [IDX2]

 4            NULL           BRA               ET1    REL8

Recuerda:
   1. La forma de leer los archivos y el uso de estructuras de datos deben de utilizarse según convengan.
   2. Puedes utilizar tantas variables temporales como lo desees.

Características del reporte.
   1.       Debe de imprimirse, máximo una página.
   2.       No debe de tener faltas de ortografía.
   3.       Debe de tener el nombre del alumno código, grupo y fecha de entrega.
   4.       Descripción del reporte:
            1. Describir el algoritmo utilizado
            2. No imprimir código.
            3. Incluir una conclusión del desarrollo de la práctica




Modificado por Michelle Torres. Octubre 2011                                                    Hoja 2 de 2.

Mais conteúdo relacionado

Mais procurados

Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++Rosbelia Balza
 
Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Idalia Tristan
 
Estructuras básicas para C++
Estructuras básicas para C++Estructuras básicas para C++
Estructuras básicas para C++Bryangio2002
 
Mynor Alexander Hernandez Canuz
Mynor Alexander Hernandez CanuzMynor Alexander Hernandez Canuz
Mynor Alexander Hernandez Canuzguest79d55c9
 
Gestión Dinámica de la Memoria
Gestión Dinámica de la MemoriaGestión Dinámica de la Memoria
Gestión Dinámica de la MemoriaMago Julio Cesar
 
Creacion de una librería propia en C
Creacion de una librería propia en CCreacion de una librería propia en C
Creacion de una librería propia en CRonny Parra
 
Arreglo de punteros
Arreglo de punterosArreglo de punteros
Arreglo de punterospedreror1
 
Lenguaje C para Administradores de Red / Script III - Memoria
Lenguaje C para Administradores de Red / Script III - MemoriaLenguaje C para Administradores de Red / Script III - Memoria
Lenguaje C para Administradores de Red / Script III - Memoriasirfids
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje cMaylin25
 
Bibliotecas en c
Bibliotecas en cBibliotecas en c
Bibliotecas en cdemata
 
TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++Idalia Tristan
 

Mais procurados (20)

Librerias ansi c
Librerias ansi cLibrerias ansi c
Librerias ansi c
 
Libreria c++
Libreria c++Libreria c++
Libreria c++
 
Estructura básica de un programa en C++
Estructura básica de un programa en C++Estructura básica de un programa en C++
Estructura básica de un programa en C++
 
Bibliotecas o libreria de c++
Bibliotecas o libreria de c++Bibliotecas o libreria de c++
Bibliotecas o libreria de c++
 
Librerias de C++
Librerias de C++Librerias de C++
Librerias de C++
 
Estructuras básicas para C++
Estructuras básicas para C++Estructuras básicas para C++
Estructuras básicas para C++
 
Compiladores
CompiladoresCompiladores
Compiladores
 
Mynor Alexander Hernandez Canuz
Mynor Alexander Hernandez CanuzMynor Alexander Hernandez Canuz
Mynor Alexander Hernandez Canuz
 
Investigacion 1
Investigacion 1Investigacion 1
Investigacion 1
 
Gestión Dinámica de la Memoria
Gestión Dinámica de la MemoriaGestión Dinámica de la Memoria
Gestión Dinámica de la Memoria
 
Funciones de entrada y salida
Funciones de entrada y salidaFunciones de entrada y salida
Funciones de entrada y salida
 
Creacion de una librería propia en C
Creacion de una librería propia en CCreacion de una librería propia en C
Creacion de una librería propia en C
 
Arreglo de punteros
Arreglo de punterosArreglo de punteros
Arreglo de punteros
 
Lenguaje C para Administradores de Red / Script III - Memoria
Lenguaje C para Administradores de Red / Script III - MemoriaLenguaje C para Administradores de Red / Script III - Memoria
Lenguaje C para Administradores de Red / Script III - Memoria
 
Introduccion al lenguaje c
Introduccion al lenguaje cIntroduccion al lenguaje c
Introduccion al lenguaje c
 
Punteros
PunterosPunteros
Punteros
 
Python (ejercicios)
Python (ejercicios)Python (ejercicios)
Python (ejercicios)
 
Bibliotecas en c
Bibliotecas en cBibliotecas en c
Bibliotecas en c
 
Pb1
Pb1Pb1
Pb1
 
TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++TIPOS DE DATOS PARA C++
TIPOS DE DATOS PARA C++
 

Semelhante a Taller de programación de sistemas. Descripción de práctica 2

Semelhante a Taller de programación de sistemas. Descripción de práctica 2 (20)

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Clase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensambladorClase10 2-lenguaje ensamblador
Clase10 2-lenguaje ensamblador
 
Desarrollo aplicaciones visuales
Desarrollo aplicaciones visualesDesarrollo aplicaciones visuales
Desarrollo aplicaciones visuales
 
Desarrollo aplicaciones visuales
Desarrollo aplicaciones visualesDesarrollo aplicaciones visuales
Desarrollo aplicaciones visuales
 
Desarrollo aplicaciones visuales
Desarrollo aplicaciones visualesDesarrollo aplicaciones visuales
Desarrollo aplicaciones visuales
 
Unidad I.pdf
Unidad I.pdfUnidad I.pdf
Unidad I.pdf
 
ELEMENTOS DE PROGRA 30-05.pdf
ELEMENTOS DE PROGRA 30-05.pdfELEMENTOS DE PROGRA 30-05.pdf
ELEMENTOS DE PROGRA 30-05.pdf
 
Elementos basicos de_programacion
Elementos basicos de_programacionElementos basicos de_programacion
Elementos basicos de_programacion
 
Tutorial ensamblador
Tutorial ensambladorTutorial ensamblador
Tutorial ensamblador
 
Programacion C#
Programacion C#Programacion C#
Programacion C#
 
Workshop reversing
Workshop reversingWorkshop reversing
Workshop reversing
 
Matlab
MatlabMatlab
Matlab
 
Introduccion a Matlab
Introduccion a MatlabIntroduccion a Matlab
Introduccion a Matlab
 
Analisis sintactico
Analisis sintacticoAnalisis sintactico
Analisis sintactico
 
Formatos de instrucción
Formatos de instrucciónFormatos de instrucción
Formatos de instrucción
 
Tipos de datos_para_c++
Tipos de datos_para_c++Tipos de datos_para_c++
Tipos de datos_para_c++
 
Tipo de datos_c_
Tipo de datos_c_Tipo de datos_c_
Tipo de datos_c_
 
Operaciones aritméticas
Operaciones aritméticasOperaciones aritméticas
Operaciones aritméticas
 
microprocesadores y microcontroladores
microprocesadores y microcontroladoresmicroprocesadores y microcontroladores
microprocesadores y microcontroladores
 
I S A
I S AI S A
I S A
 

Mais de Michelle Torres

Prototipado rápido para web y mobile
Prototipado rápido para web y mobilePrototipado rápido para web y mobile
Prototipado rápido para web y mobileMichelle Torres
 
Uso de Puerto paralelo en C
Uso de Puerto paralelo en CUso de Puerto paralelo en C
Uso de Puerto paralelo en CMichelle Torres
 
Material de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMaterial de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMichelle Torres
 
Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Michelle Torres
 
Modos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaModos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaMichelle Torres
 
Manejo de archivos en JAVA
Manejo de archivos en JAVAManejo de archivos en JAVA
Manejo de archivos en JAVAMichelle Torres
 
Programación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAProgramación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAMichelle Torres
 
Recordando Java desde Cero
Recordando Java desde CeroRecordando Java desde Cero
Recordando Java desde CeroMichelle Torres
 
Rubrica (primera entrega)
Rubrica (primera entrega)Rubrica (primera entrega)
Rubrica (primera entrega)Michelle Torres
 
Introducción a la programación en ambientes web
Introducción a la programación en ambientes webIntroducción a la programación en ambientes web
Introducción a la programación en ambientes webMichelle Torres
 
My sql para principiantes
My sql para principiantesMy sql para principiantes
My sql para principiantesMichelle Torres
 

Mais de Michelle Torres (16)

Prototipado rápido para web y mobile
Prototipado rápido para web y mobilePrototipado rápido para web y mobile
Prototipado rápido para web y mobile
 
Uso de Puerto paralelo en C
Uso de Puerto paralelo en CUso de Puerto paralelo en C
Uso de Puerto paralelo en C
 
Arreglos en PHP
Arreglos en PHPArreglos en PHP
Arreglos en PHP
 
Material de administración y auditoría de la función informática
Material de administración y auditoría de la función informáticaMaterial de administración y auditoría de la función informática
Material de administración y auditoría de la función informática
 
Cpu12 Reference Manual
Cpu12 Reference ManualCpu12 Reference Manual
Cpu12 Reference Manual
 
Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1Taller de programación de sistemas. Descripción de práctica 1
Taller de programación de sistemas. Descripción de práctica 1
 
Modos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorolaModos de direccionamiento para el HC12 de motorola
Modos de direccionamiento para el HC12 de motorola
 
Manejo de archivos en JAVA
Manejo de archivos en JAVAManejo de archivos en JAVA
Manejo de archivos en JAVA
 
Programación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVAProgramación Orientada a Objetos en JAVA
Programación Orientada a Objetos en JAVA
 
Recordando Java desde Cero
Recordando Java desde CeroRecordando Java desde Cero
Recordando Java desde Cero
 
Rubrica (primera entrega)
Rubrica (primera entrega)Rubrica (primera entrega)
Rubrica (primera entrega)
 
Cv resumido conaic
Cv resumido conaicCv resumido conaic
Cv resumido conaic
 
Introducción a la programación en ambientes web
Introducción a la programación en ambientes webIntroducción a la programación en ambientes web
Introducción a la programación en ambientes web
 
Servidores web
Servidores webServidores web
Servidores web
 
XHTML y CSS
XHTML y CSSXHTML y CSS
XHTML y CSS
 
My sql para principiantes
My sql para principiantesMy sql para principiantes
My sql para principiantes
 

Último

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxFederico Castellari
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativanicho110
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxJorgeParada26
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanamcerpam
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxAlan779941
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21mariacbr99
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosJhonJairoRodriguezCe
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIhmpuellon
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estossgonzalezp1
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.FlorenciaCattelani
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...JohnRamos830530
 

Último (11)

Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Guia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos BasicosGuia Basica para bachillerato de Circuitos Basicos
Guia Basica para bachillerato de Circuitos Basicos
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 

Taller de programación de sistemas. Descripción de práctica 2

  • 1. Taller de programación de sistemas. Diseño del ensamblador. Práctica No. 2. Identificar modos de direccionamiento en la tabla de códigos de operación. Modificar el programa anterior para que se busque el conjunto de instrucciones identificado e identificar cuales modos de direccionamiento le corresponde a cada instrucción. Descripción de la práctica. 1. Este es un ejemplo de ASM para esta practica ORG $AB ET1 SWI ADCA 1,X BRA ET1 END 2. Capturar en el bloc notas (o en otro editor de texto puro), el conjunto de instrucciones con el nombre TABOP.TXT. Sugerencias de captura: Instrucción Modo Código Total de Total de Suma total (CODOP) direcc. máquina (hex) bytes bytes por de bytes calculados calcular … ADCA Imm8 (anotar los (anotar el (anotar el (anotar el ADCA Dir dígitos número que número que número que ADCA Ext hexadecimales, se se se ADCA Idx no anotar lo corresponda corresponda corresponda ADCA Idx1 que está en por los bytes por los pares de sumar los … letras que están representados valores minúsculas) representados en letras numéricos en hex) minúsculas) de las dos columnas anteriores) … BRA REL8 … SWI INH Entre las sugerencias para el tabop se le recomienda que revise el manual del CPU y tome en cuenta los operando utilizados para cada modo de direccionamiento y así indicar REL8, REL9, REL16 en lugar de únicamente REL 3. Modificar el programa para que una vez que identifique las palabras por línea (ETIQUETA, CODOP, OPERANDO) se compare la palabra CODOP contra el TABOP.TXT. Modificado por Michelle Torres. Octubre 2011 Hoja 1 de 2.
  • 2. a. Buscar el valor de la variable CODOP contra el TABOP.TXT. (abrir el archivo previamente) b. Si se encuentra: i. Verificar si este CODOP debe o no debe de tener operando en base a la cantidad de bytes por calcular. Si no cumple con este requisito indicar en el archivo de errores. ii. Identificar el modo o modos de direccionamiento, el código calculado, la cantidad de bytes calculados, por calcular y el total de bytes que le corresponden a este CODOP. iii. En el archivo de instrucciones indicar el o los nombres de direccionamiento que le corresponden a este CODOP. c. Si no se encuentra, indicar el error: código no encontrado u operando no válido según sea el caso. Ejemplo del P2ASM.INST: Linea ETQ CODOP OPER MODOS 1 NULL ORG $AB 2 ET1 SWI NULL INH 3 NULL ADCA 1,X IMM8,   DIR,   EXT,   IDX,   IDX1,   IDX2,  [D,IDX], [IDX2] 4 NULL BRA ET1 REL8 Recuerda: 1. La forma de leer los archivos y el uso de estructuras de datos deben de utilizarse según convengan. 2. Puedes utilizar tantas variables temporales como lo desees. Características del reporte. 1. Debe de imprimirse, máximo una página. 2. No debe de tener faltas de ortografía. 3. Debe de tener el nombre del alumno código, grupo y fecha de entrega. 4. Descripción del reporte: 1. Describir el algoritmo utilizado 2. No imprimir código. 3. Incluir una conclusión del desarrollo de la práctica Modificado por Michelle Torres. Octubre 2011 Hoja 2 de 2.