Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Fundamentos de la computancion
Medellin
UPB
2020
1. Defina los siguientes conceptos:
Lenguajes de maquina: El lenguaje de máquina o código máquina es el
sistema de códigos directamente interpretable por un circuito
microprogramable, como el microprocesador de una computadora o
el microcontrolador de un automata. Este lenguaje está compuesto por
un conjunto de instrucciones que determinan acciones a ser tomadas por la
máquina. Un programa consiste en una cadena de estas instrucciones más
un conjunto de datos sobre el cual se trabaja. Estas instrucciones son
normalmente ejecutadas en secuencia, con eventuales cambios de flujo
causados por el propio programa o eventos externos. El lenguaje de
máquina es específico de la arquitectura de la maquina, aunque el conjunto
de instrucciones disponibles pueda ser similar entre arquitecturas distintas.
Ensambladores: El término ensamblador se refiere a un tipo de programa
informatico que se encarga de traducir un fichero fuente escrito en
un lenguaje ensamblador, a un fichero objeto que contiene codigo maquina,
ejecutable directamente por el microprocesador.
Lenguajes de alto nivel: Un lenguaje de programación de alto nivel se
caracteriza por expresar los algoritmos de una manera adecuada a la
capacidad cognitiva humana, en lugar de la capacidad con que los ejecutan
las máquinas. Estos lenguajes permiten una máxima flexibilidad al
programador a la hora de abstraerse o de ser literal. Permiten un camino
bidireccional entre el lenguaje máquina y una expresión casi oral entre la
escritura del programa y su posterior compilación. Por lo general suelen
estar orientados a objetos, a eventos o a funciones, pudiendo estos
combinarse.
Compilador: un compilador es un tipo de traductor que transforma
un programa entero de un leguaje de programacion (llamado codigo fuente) a otro.
Interpretador: es un programa informatica capaz de analizar y ejecutar
otros programas.
2. Responda las siguientes preguntas:
¿Cuál es la diferencia entre interpretador y compilador?
R/ la diferencia es que os compiladores reúnen diversos elementos o
fragmentos en una misma unidad, que puede ser almacenada y
reutilizada. Y los intérpretes sólo realizan la traduccion a medida que
sea necesaria, típicamente, instrucción por instrucción, y
normalmente no guardan el resultado de dicha traducción.
Mencione 5 pros y 5 contras de los diferentes lenguajes de
programación
Ventajas :
o El lenguaje C ha sido pensado para ser altamente transportable.
o Un núcleo del lenguaje simple, con funcionalidades añadidas
importantes, como funciones matemáticas y de manejo de archivos,
proporcionadas por bibliotecas.
o Es un lenguaje muy flexible que permite programar con múltiples
estilos. Uno de los más empleados es el estructurado "no llevado al
extremo" (permitiendo ciertas licencias de ruptura).
o Un sistema de tipos que impide operaciones sin sentido.
o Usa un lenguaje de preprocesado, el preprocesador de C, para
tareas como definir macros e incluir múltiples archivos de código
fuente.
Desventajas:
o Recolección de basura nativa, sin embargo se encuentran a tal
efecto bibliotecas como la "libgc" desarrollada por Sun Microsystems,
o el Recolector de basura de Boehm.
o Soporte para programación orientada a objetos, aunque la
implementación original de C++ fue un preprocesador que traducía
código fuente de C++ a C.
o Encapsulación.
o Funciones anidadas, aunque GCC tiene esta característica como
extensión.
o Polimorfismo en tiempo de código en forma de sobrecarga,
sobrecarga de operadores y sólo dispone de un soporte rudimentario
para la programación genérica.