SlideShare una empresa de Scribd logo
1 de 5
Descargar para leer sin conexión
MUSIM/0
Los componentes léxicos o tokens que conforman el lenguaje son los siguientes:
 Identificadores, que solo son nombres de variables y están compuestos por una única
letra minúscula de rango a-z.
 Constantes numéricas de un solo digito, de rango 0-9.
 Operadores: +,-,*,/, y %.
 Símbolo de asignación: = (igual).
 Paréntesis: ( y ).
 Separador de sentencias: ; (punto y coma).
 Indicadores de principio y fin de bloque: { y }.
 Palabras reservadas que están formadas por una letra mayúscula.
 Tan solo son tres: R (lectura), W (escritura) y M (programa principal).
Puede observarse que este lenguaje solo permite tres tipos de sentencias: lectura, asignación y
escritura. Tiene un solo tipo de datos: entero. Las variables están formadas por una única letra
minúscula, y las constantes son de un dígito.
Tiene cinco operadores + (adición), -(diferencia), *(producto), / (división entera), y %(modulo).
Se permite el uso de paréntesis.
Ejemplo 1:
M
{
R a;
R b;
c = a + b;
W c;
}
Analicemos lo que hace este programa:
 “R a” y “R b” indica que le leen las variables a y b.
 “c = a + b” indica que en la variable c se asignara el resultado de la suma de a y b.
 “W c” indica que se escribirá la variable c.
 En pocas palabras, este programa leerá dos variables, las sumara y finalmente
mostrará el resultado en pantalla.
Ejercicio 1
M
{
R a;
R b;
R c;
p = (a + b + c)/3;
W p;
}
Describa lo que hace el programa anterior según las definiciones del lenguaje:
Ejercicio 2
M
{
R a;
R b;
r = (a * a) + (b * b);
W r;
}
Describa lo que hace el programa anterior.
Ejercicio 3
Escriba un programa en MUSIM/0 que lea un número, calcule y muestre en pantalla cuanto es
ese número elevado al cubo.
Ejercicio 4
Escriba un programa en MUSIM/0 que lea 5 números, calcule y muestre en pantalla: la suma,
promedio y multiplicación de los 5 números.
Ejercicio 5
Escriba un programa en MUSIM/0 que lea un número y determine si este es par o impar. Si es
par deberá mostrar 0 en pantalla, mientras que si es impar deberá mostrar 1
ENSAMPOCO/0
Como lenguaje objeto se utiliza un lenguaje intermedio que es un pequeño ensamblador, que
se denomina ENSAMPOCO/0. Este ensamblador trabaja sobre una maquina abstracta, en este
caso particular es una máquina de pila. La máquina tendrá una memoria de 26 celdas cuyas
direcciones se nombrarán con las letras de la ‘a’ a la ‘z’, y una pila LIFO donde se realizarán las
operaciones aritméticas.
A continuación se describe la forma de trabajo de las distintas instrucciones:
Instrucción Descripción
Instrucción Descripción
.CODE Indica el comienzo del código.
PUSHC Coloca una constante en la pila. El operando es una constante.
PUSHA Coloca en la pila la dirección de una variable. El operando es una variable,
dado que las direcciones se denominan con el nombre de las variables.
LOAD Asume que el último valor insertado en la pila es una dirección. Esta dirección
es extraída de la pila y en su lugar se pone el valor ubicado en dicha dirección.
No tiene operando.
STORE Usa los dos últimos elementos de la pila. Uno es la dirección de una celda y
memoria y el otro el valor a almacenar en dicha celda. El último elemento de
la pila es el valor y el otro la dirección. Después de ejecutada la instrucción, los
dos elementos implicados son extraídos de la pila, dejándolos en el mismo
lugar. No tiene operando.
NEG Cambia el signo del último valor introducido en la pila, dejándolo en el mismo
lugar. No tiene operando.
ADD Cambia el signo del último valor introducido en la pila, dejándolo en el mismo
lugar. No tiene operando.
MUL Opera con los dos últimos elementos introducidos en la pila, extrayéndolos y
dejando en su lugar el producto. Por tanto la pila habrá disminuido en un
elemento. No tiene operando.
DIV Opera con los dos últimos elementos introducidos en la pila, extrayendo
primero el denominador y después el numerador y dejando en su lugar la
división entera. Por tanto la pila habrá disminuido en un elemento. No tiene
operando.
MOD Opera con los dos últimos elementos introducidos en la pila, extrayendo
primero el denominador y después el numerador y dejando en su lugar el
modulo. Por tanto, la pila habrá disminuido en un elemento. No tiene
operando.
INPUT Toma el valor del buffer de entrada, en este caso el teclado, y lo coloca en la
dirección asignada a la variable. La pila no sufre cambios.
OUTPUT Toma el valor de la dirección indicada y lo lleva al buffer de salida, en este caso
la pantalla. La pila no sufre cambios.
END Indica el fin de programa.
Ejemplo 2
A continuación se muestran un programa fuente en MUSIM/0, y su traducción al código
intermedio ENSAMPOCO/0
Código en MUSIM/0
M
{
R a;
R b;
z = a + b;
W z;
}
Traducción a ENSAMPOCO/0
.CODE
INPUT a
INPUT b
PUSHA z
PUSHA a
LOAD
PUSHA b
LOAD
ADD
STORE
OUTPUT z
END
Ejercicio 6
Traducir el siguiente código en MUSIM/0 A ENSAMPOCO/0
M
{
R a;
R b;
z = a + b - 2;
W z;
}
Traducción a ENSAMPOCO/0
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
Ejercicio 7
Traducir el siguiente código en MUSIM/0 a ENSAMPOCO/0
M
{
R a;
R b;
R c;
q = (a * a) + (b * b) + (c * c);
W q;
}
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________
_____________________________________________________________

Más contenido relacionado

La actualidad más candente

La actualidad más candente (10)

Dirección iP Clase "C"
Dirección iP Clase "C"Dirección iP Clase "C"
Dirección iP Clase "C"
 
Investigación ipv4
Investigación ipv4Investigación ipv4
Investigación ipv4
 
Conectores de video
Conectores de videoConectores de video
Conectores de video
 
Direccionamiento de red IPv4
Direccionamiento de red IPv4Direccionamiento de red IPv4
Direccionamiento de red IPv4
 
LA TARJETA MADRE Y SUS PROCESADORES
LA TARJETA MADRE Y SUS PROCESADORESLA TARJETA MADRE Y SUS PROCESADORES
LA TARJETA MADRE Y SUS PROCESADORES
 
Fcaps
FcapsFcaps
Fcaps
 
Estandar 802.3
Estandar 802.3Estandar 802.3
Estandar 802.3
 
André tesa
André tesaAndré tesa
André tesa
 
Sistema telefónico móvil avanzado AMPS
Sistema telefónico móvil avanzado AMPSSistema telefónico móvil avanzado AMPS
Sistema telefónico móvil avanzado AMPS
 
DISPOSITIVOS UTILIZADOS PARA LA INTERCONEXIONES DE REDES
DISPOSITIVOS UTILIZADOS PARA LA INTERCONEXIONES DE REDESDISPOSITIVOS UTILIZADOS PARA LA INTERCONEXIONES DE REDES
DISPOSITIVOS UTILIZADOS PARA LA INTERCONEXIONES DE REDES
 

Destacado

Shooting Shchedule
Shooting ShcheduleShooting Shchedule
Shooting Shcheduleergis
 
ฉันเหมือนใคร
ฉันเหมือนใครฉันเหมือนใคร
ฉันเหมือนใครnatnatnatnatnat
 
La teràpia gènica
La teràpia gènicaLa teràpia gènica
La teràpia gènicaCaarLoos
 
Keynote for pitch Antonio
Keynote for pitch  Antonio Keynote for pitch  Antonio
Keynote for pitch Antonio Mark Herring
 
Keynote for pitch Ben P, Gabby, Ella
Keynote for pitch Ben P, Gabby, EllaKeynote for pitch Ben P, Gabby, Ella
Keynote for pitch Ben P, Gabby, EllaMark Herring
 
Keynote for pitch Jessica
Keynote for pitch  Jessica Keynote for pitch  Jessica
Keynote for pitch Jessica Mark Herring
 
Low hanging fruit of ecommerce presentation
Low hanging fruit of ecommerce presentationLow hanging fruit of ecommerce presentation
Low hanging fruit of ecommerce presentationMatt Robison
 
Repaso de 2º grado super corto
Repaso de 2º grado super  cortoRepaso de 2º grado super  corto
Repaso de 2º grado super cortochioogem
 
Simulación de un autómata de estado finito en Jflap
Simulación de un autómata de estado finito en JflapSimulación de un autómata de estado finito en Jflap
Simulación de un autómata de estado finito en JflapEduardo Chavez Vasquez
 
Light and Rain (G.H.Jones)
Light and Rain (G.H.Jones)Light and Rain (G.H.Jones)
Light and Rain (G.H.Jones)Makala (D)
 
Lady in Black -A Time for us
Lady in Black -A Time for usLady in Black -A Time for us
Lady in Black -A Time for usMakala (D)
 
Maquinas de Estado Finito
Maquinas de Estado FinitoMaquinas de Estado Finito
Maquinas de Estado FinitoRosangela Perez
 

Destacado (14)

Shooting Shchedule
Shooting ShcheduleShooting Shchedule
Shooting Shchedule
 
ฉันเหมือนใคร
ฉันเหมือนใครฉันเหมือนใคร
ฉันเหมือนใคร
 
La teràpia gènica
La teràpia gènicaLa teràpia gènica
La teràpia gènica
 
Keynote for pitch Antonio
Keynote for pitch  Antonio Keynote for pitch  Antonio
Keynote for pitch Antonio
 
Keynote for pitch Ben P, Gabby, Ella
Keynote for pitch Ben P, Gabby, EllaKeynote for pitch Ben P, Gabby, Ella
Keynote for pitch Ben P, Gabby, Ella
 
Keynote for pitch Jessica
Keynote for pitch  Jessica Keynote for pitch  Jessica
Keynote for pitch Jessica
 
Low hanging fruit of ecommerce presentation
Low hanging fruit of ecommerce presentationLow hanging fruit of ecommerce presentation
Low hanging fruit of ecommerce presentation
 
Repaso de 2º grado super corto
Repaso de 2º grado super  cortoRepaso de 2º grado super  corto
Repaso de 2º grado super corto
 
Analizador Léxico en C++
Analizador Léxico en C++Analizador Léxico en C++
Analizador Léxico en C++
 
Simulación de un autómata de estado finito en Jflap
Simulación de un autómata de estado finito en JflapSimulación de un autómata de estado finito en Jflap
Simulación de un autómata de estado finito en Jflap
 
Light and Rain (G.H.Jones)
Light and Rain (G.H.Jones)Light and Rain (G.H.Jones)
Light and Rain (G.H.Jones)
 
Lady in Black -A Time for us
Lady in Black -A Time for usLady in Black -A Time for us
Lady in Black -A Time for us
 
Clinicas
ClinicasClinicas
Clinicas
 
Maquinas de Estado Finito
Maquinas de Estado FinitoMaquinas de Estado Finito
Maquinas de Estado Finito
 

Similar a Lenguaje MUSIM/0 y ensamblador ENSAMPOCO/0

Escritura de algoritmos (grupo 5)
Escritura de algoritmos (grupo 5)Escritura de algoritmos (grupo 5)
Escritura de algoritmos (grupo 5)Mayron Martinez
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cZalimanunezc
 
Fpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFresyMetal
 
Tutorial sencillo manejo_de_pseint_y_dfd
Tutorial sencillo manejo_de_pseint_y_dfdTutorial sencillo manejo_de_pseint_y_dfd
Tutorial sencillo manejo_de_pseint_y_dfdjvtoro
 
Introducción a la programación
Introducción  a la programaciónIntroducción  a la programación
Introducción a la programaciónH Trujillo
 
Programacion MatLab
Programacion MatLabProgramacion MatLab
Programacion MatLabEdgar Galvez
 
Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)tonytenorio2
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabrielEnrique Morales
 
Capítulo 1 Qbasic entrada y salida básica
Capítulo 1  Qbasic entrada y salida básicaCapítulo 1  Qbasic entrada y salida básica
Capítulo 1 Qbasic entrada y salida básicaJulio Ayala Rolón
 
Comenzando a programar
Comenzando a programarComenzando a programar
Comenzando a programarRubén Loredo
 
Curso De Excel Básico (Sesión 5 )
Curso De Excel Básico (Sesión 5 )Curso De Excel Básico (Sesión 5 )
Curso De Excel Básico (Sesión 5 )Hugo Malpartida
 
Principales codigos visual basic
Principales codigos visual basicPrincipales codigos visual basic
Principales codigos visual basicMarlon Gomez Solis
 
Estructura del programa arduino
Estructura del programa arduinoEstructura del programa arduino
Estructura del programa arduinotecnocm
 

Similar a Lenguaje MUSIM/0 y ensamblador ENSAMPOCO/0 (20)

Pseudolenguaje
PseudolenguajePseudolenguaje
Pseudolenguaje
 
Escritura de algoritmos (grupo 5)
Escritura de algoritmos (grupo 5)Escritura de algoritmos (grupo 5)
Escritura de algoritmos (grupo 5)
 
Fundamentos de Lenguaje C
Fundamentos de Lenguaje CFundamentos de Lenguaje C
Fundamentos de Lenguaje C
 
Apuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje cApuntes1 elementos del lenguaje c
Apuntes1 elementos del lenguaje c
 
Fpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.comFpr Tema 3 www.fresymetal.com
Fpr Tema 3 www.fresymetal.com
 
Tutorial sencillo manejo_de_pseint_y_dfd
Tutorial sencillo manejo_de_pseint_y_dfdTutorial sencillo manejo_de_pseint_y_dfd
Tutorial sencillo manejo_de_pseint_y_dfd
 
Introducción a la programación
Introducción  a la programaciónIntroducción  a la programación
Introducción a la programación
 
Programacion MatLab
Programacion MatLabProgramacion MatLab
Programacion MatLab
 
Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)Grupo 6 turbopascal apesteguia (1)
Grupo 6 turbopascal apesteguia (1)
 
Presentación 2014 profe gabriel
Presentación 2014 profe gabrielPresentación 2014 profe gabriel
Presentación 2014 profe gabriel
 
Pascal [modo de compatibilidad]
Pascal [modo de compatibilidad]Pascal [modo de compatibilidad]
Pascal [modo de compatibilidad]
 
Pascal
PascalPascal
Pascal
 
Capítulo 1 Qbasic entrada y salida básica
Capítulo 1  Qbasic entrada y salida básicaCapítulo 1  Qbasic entrada y salida básica
Capítulo 1 Qbasic entrada y salida básica
 
TDS.pdf
TDS.pdfTDS.pdf
TDS.pdf
 
Comenzando a programar
Comenzando a programarComenzando a programar
Comenzando a programar
 
cap7.pdf
cap7.pdfcap7.pdf
cap7.pdf
 
Curso De Excel Básico (Sesión 5 )
Curso De Excel Básico (Sesión 5 )Curso De Excel Básico (Sesión 5 )
Curso De Excel Básico (Sesión 5 )
 
Principales codigos visual basic
Principales codigos visual basicPrincipales codigos visual basic
Principales codigos visual basic
 
C sharp
C sharpC sharp
C sharp
 
Estructura del programa arduino
Estructura del programa arduinoEstructura del programa arduino
Estructura del programa arduino
 

Último

Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFlor Idalia Espinoza Ortega
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuelacocuyelquemao
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptELENA GALLARDO PAÚLS
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscaeliseo91
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 

Último (20)

Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 
Factores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamicaFactores ecosistemas: interacciones, energia y dinamica
Factores ecosistemas: interacciones, energia y dinamica
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
Movimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en VenezuelaMovimientos Precursores de La Independencia en Venezuela
Movimientos Precursores de La Independencia en Venezuela
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.pptDE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
DE LAS OLIMPIADAS GRIEGAS A LAS DEL MUNDO MODERNO.ppt
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.Defendamos la verdad. La defensa es importante.
Defendamos la verdad. La defensa es importante.
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020Razonamiento Matemático 1. Deta del año 2020
Razonamiento Matemático 1. Deta del año 2020
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
la unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fiscala unidad de s sesion edussssssssssssssscacio fisca
la unidad de s sesion edussssssssssssssscacio fisca
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 

Lenguaje MUSIM/0 y ensamblador ENSAMPOCO/0

  • 1. MUSIM/0 Los componentes léxicos o tokens que conforman el lenguaje son los siguientes:  Identificadores, que solo son nombres de variables y están compuestos por una única letra minúscula de rango a-z.  Constantes numéricas de un solo digito, de rango 0-9.  Operadores: +,-,*,/, y %.  Símbolo de asignación: = (igual).  Paréntesis: ( y ).  Separador de sentencias: ; (punto y coma).  Indicadores de principio y fin de bloque: { y }.  Palabras reservadas que están formadas por una letra mayúscula.  Tan solo son tres: R (lectura), W (escritura) y M (programa principal). Puede observarse que este lenguaje solo permite tres tipos de sentencias: lectura, asignación y escritura. Tiene un solo tipo de datos: entero. Las variables están formadas por una única letra minúscula, y las constantes son de un dígito. Tiene cinco operadores + (adición), -(diferencia), *(producto), / (división entera), y %(modulo). Se permite el uso de paréntesis. Ejemplo 1: M { R a; R b; c = a + b; W c; } Analicemos lo que hace este programa:  “R a” y “R b” indica que le leen las variables a y b.  “c = a + b” indica que en la variable c se asignara el resultado de la suma de a y b.  “W c” indica que se escribirá la variable c.  En pocas palabras, este programa leerá dos variables, las sumara y finalmente mostrará el resultado en pantalla. Ejercicio 1 M { R a; R b; R c; p = (a + b + c)/3; W p; }
  • 2. Describa lo que hace el programa anterior según las definiciones del lenguaje: Ejercicio 2 M { R a; R b; r = (a * a) + (b * b); W r; } Describa lo que hace el programa anterior. Ejercicio 3 Escriba un programa en MUSIM/0 que lea un número, calcule y muestre en pantalla cuanto es ese número elevado al cubo. Ejercicio 4 Escriba un programa en MUSIM/0 que lea 5 números, calcule y muestre en pantalla: la suma, promedio y multiplicación de los 5 números. Ejercicio 5 Escriba un programa en MUSIM/0 que lea un número y determine si este es par o impar. Si es par deberá mostrar 0 en pantalla, mientras que si es impar deberá mostrar 1
  • 3. ENSAMPOCO/0 Como lenguaje objeto se utiliza un lenguaje intermedio que es un pequeño ensamblador, que se denomina ENSAMPOCO/0. Este ensamblador trabaja sobre una maquina abstracta, en este caso particular es una máquina de pila. La máquina tendrá una memoria de 26 celdas cuyas direcciones se nombrarán con las letras de la ‘a’ a la ‘z’, y una pila LIFO donde se realizarán las operaciones aritméticas. A continuación se describe la forma de trabajo de las distintas instrucciones: Instrucción Descripción Instrucción Descripción .CODE Indica el comienzo del código. PUSHC Coloca una constante en la pila. El operando es una constante. PUSHA Coloca en la pila la dirección de una variable. El operando es una variable, dado que las direcciones se denominan con el nombre de las variables. LOAD Asume que el último valor insertado en la pila es una dirección. Esta dirección es extraída de la pila y en su lugar se pone el valor ubicado en dicha dirección. No tiene operando. STORE Usa los dos últimos elementos de la pila. Uno es la dirección de una celda y memoria y el otro el valor a almacenar en dicha celda. El último elemento de la pila es el valor y el otro la dirección. Después de ejecutada la instrucción, los dos elementos implicados son extraídos de la pila, dejándolos en el mismo lugar. No tiene operando. NEG Cambia el signo del último valor introducido en la pila, dejándolo en el mismo lugar. No tiene operando. ADD Cambia el signo del último valor introducido en la pila, dejándolo en el mismo lugar. No tiene operando. MUL Opera con los dos últimos elementos introducidos en la pila, extrayéndolos y dejando en su lugar el producto. Por tanto la pila habrá disminuido en un elemento. No tiene operando. DIV Opera con los dos últimos elementos introducidos en la pila, extrayendo primero el denominador y después el numerador y dejando en su lugar la división entera. Por tanto la pila habrá disminuido en un elemento. No tiene operando. MOD Opera con los dos últimos elementos introducidos en la pila, extrayendo primero el denominador y después el numerador y dejando en su lugar el modulo. Por tanto, la pila habrá disminuido en un elemento. No tiene operando. INPUT Toma el valor del buffer de entrada, en este caso el teclado, y lo coloca en la dirección asignada a la variable. La pila no sufre cambios. OUTPUT Toma el valor de la dirección indicada y lo lleva al buffer de salida, en este caso la pantalla. La pila no sufre cambios. END Indica el fin de programa. Ejemplo 2 A continuación se muestran un programa fuente en MUSIM/0, y su traducción al código intermedio ENSAMPOCO/0 Código en MUSIM/0
  • 4. M { R a; R b; z = a + b; W z; } Traducción a ENSAMPOCO/0 .CODE INPUT a INPUT b PUSHA z PUSHA a LOAD PUSHA b LOAD ADD STORE OUTPUT z END Ejercicio 6 Traducir el siguiente código en MUSIM/0 A ENSAMPOCO/0 M { R a; R b; z = a + b - 2; W z; } Traducción a ENSAMPOCO/0 _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ Ejercicio 7 Traducir el siguiente código en MUSIM/0 a ENSAMPOCO/0
  • 5. M { R a; R b; R c; q = (a * a) + (b * b) + (c * c); W q; } _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________ _____________________________________________________________