Sie sind auf Seite 1von 8

Instituto Superior de Formación Docente y Técnica

Nº 44

Tecnicatura Superior en Análisis de Sistemas

Práctica Profesional

Trabajo Práctico:
¿Qué es la Programación?

Profesor: Lic. Patricio Meaca

Curso: 3° U

Alumno: Mauricio Codega

Año: 2020
Actividades:

1. ¿Qué es la Programación y cómo se desarrolla?

Entendemos la Programación como un proceso lógico en el que se aplican algoritmos y


secuencias de los mismos, con el objetivo de: atender las necesidades particulares de una
situación problemática definida y conceptualizada previamente.
La programación puede remontarse a la resolución de los primeros problemas
matemáticos, quizás con la implementación del ábaco o de las primeras calculadoras
analógicas que se conocen como clepsidras, vasijas agujereadas perforadas que permitían
conocer la hora de la noche mediante un modelo físico análogo al paso del tiempo. Otros
elementos mecánicos programables son los secuenciadores por árbol de levas, como utilizan
los lavarropas. Más adelante con la invención de la electricidad se empezaban a implementar
automatismos con finales de carrera, luego retenciones con relevadores que guardaban
memoria, luego con la invención de los semiconductores se podía bajar la potencia y
aumentar la escala de integración, conocimos las familias lógicas RDL (Resistor Diode Logic),
RTL (Resistor Transistor Logic), TTL y CMOS que todavía utilizamos en nuestros
microprocesadores y FPGAs más actuales.
La programación se desarrolla de diferentes formas según la tecnología que estemos
utilizando. Para el caso de los microprocesadores y microcontroladores, éstos poseen unos
ciertos recursos determinados por la arquitectura con la que fueron diseñados; y lo que es
común a todos ellos es que pueden aceptar una secuencia de datos ordenados (que pueden
ser instrucciones o información en bruto o semielaborada), que se conoce como programa. A
modo de ejemplo, un supermercado quiere dejar de usar una calculadora para calcular el
total de cada venta a cobrar al cliente mediante la implementación de una computadora con
un lector de códigos de barra y un monitor. Entonces un programador hace un programa que
lea los códigos de barra y sume los precios de los productos (alojados en una BB.DD) en el
monitor. Este programa, consistirá de una cierta cantidad de líneas de código que le dirán al
microprocesador que actúe como una calculadora automática, donde el programa reemplaza
al usuario en las tareas rutinarias o problemáticas (problemas automáticos) y la CPU
reemplaza a la calculadora, una tarea consistente con su arquitectura de entrada proceso
salida. De aquí nace la informática, que trata de la automatización en el proceso de obtener
datos y elaborar información.

2. ¿Qué tipos de lenguajes existen? Defínalos

Los lenguajes informáticos, son utilizados en tres formas generales comunes: mediante
ensambladores, compiladores e intérpretes. También pueden encontrarse otros sistemas de
traducción, como VHDL que es un lenguaje que simplemente describe las conexiones
eléctricas que se adoptarán en una FPGA (un microprocesador de arquitectura variable).

Los ensambladores utilizan lenguajes que prácticamente son considerados como código
máquina o de bajo nivel. El programador escribe su programa en assambler por ejemplo y
cada línea de código representa una única instrucción a ejecutar por el micro. Es necesario
tener un profundo conocimiento de la arquitectura, el set de instrucciones y la
implementación física del micro a utilizar. Luego se genera un archivo de código binario,
muchas veces observado en hexadecimal para ver cada instrucción por separado. En este tipo
de lenguaje, el ensamblador solamente verifica la sintaxis del programa en assambler y puede
linkear o enlazar algún recurso básico pero no es lo más frecuente. La portabilidad de estos
programas es mínima y mayormente se conocen como Firmwares que residen en
procesadores pequeños.

Por otro lado los compiladores trabajan con lenguajes de alto nivel, es decir que cada
línea de código se va a traducir como varias instrucciones seguidas que el usuario no podrá
determinar completamente a ciencia cierta. Por lo general no hace falta conocer mucho del
microprocesador que estamos utilizando y se enmascara todo con el uso de librerías para
mayor facilidad en tareas más complejas. Los compiladores separan el proceso de creación
del programa (verificación, linkeado y compilado) de la ejecución del mismo. Se generan
archivos ejecutables (.exe) o enlazados (linkeados) (.obj) que son implementaciones más
portables que las ensambladas (.hex), ya que pueden ser ejecutadas por mayor cantidad de
computadoras. Un ejemplo es C++, utilizado en algunos motores gráficos y en programas de
BB.DD de supermercados.

Los intérpretes no separan el proceso de creación del programa y de ejecución del mismo.
En cambio lo que se hace es trasladar el código fuente de cada programa de una
computadora a la otra y llamando al interpretador, el programa se compila y ejecuta “in situ”
digamos. Las ventajas son que cada programa es más breve porque no contiene información
sobre ninguna arquitectura y la portabilidad, que es elevadísima. Por otro lado, las
desventajas son que el programa intérprete puede ser muy pesado y específico para cada
computadora; y los tiempos de ejecución son mucho más elevados, asi que estos programas
no pueden resolver problemas que sean muy demandantes de recursos físicos. Un ejemplo es
HTML, usado en páginas web.

3. Enuncie ejemplos de Lenguajes de Programación

Java es un lenguaje de programación de propósito general, basado en clases y


orientado a objetos, que está pensado para tener la menor cantidad de dependencias de
implementación posibles. Su intención es permitir a los programadores codificar una vez y
ejecutar en cualquier parte WORA (write once, run anyware), lo que significa que el código
compilado en Java puede ser ejecutado en cualquier dispositivo que sea compatible con la
máquina virtual de Java sin la necesidad de volver a ser compilado. Las aplicaciones en Java
son típicamente compiladas en código binario que puede correr en cualquier máquina virtual
sin importar la arquitectura del procesador en el cual se están ejecutando.
Swift es un lenguaje de programación desarrollado por Apple, es compilado, de
propósito general y multi paradigma. Puede ser utilizado en iOS, IPadOS, macOS, watchOS,
tvOS, Linux and z/OS. Swift está diseñado para trabajar en los entornos Apple Cocoa y Cocoa
Touch, y utilizar el gran cuerpo de librerías en Objective-C escritas para los productos Apple.
Las librerías en Objective-C permiten utilizar al mismo tiempo en un mismo programa los
lenguajes C, C++, Objective-C y código propio de Swift.
Swift soporta muchos conceptos básicos asociados con Objective-C, como Dynamic
Dispatch, widespread late binfing, extensible programming y característica de este tipo, pero
de una manera más segura.

C++ es un lenguaje de programación de propósito general creado como una extensión


del lenguaje de programación “C”, también llamado “C con clases”. C++ tiene características
funcionales, genéricas y orientadas a objetos en adición a las facilidades de manipular
recursos físicos de la computadora desde el bajo nivel. Mayormente se implementa como un
lenguaje compilado. C++ fue diseñado con un seño hacia procesadores embebidos en placas
de circuito impreso, con recursos limitados para software o grandes sistemas que requieran
mucha capacidad de procesamiento optimizado en rendimiento, eficiencia y flexibilidad.
PHP significa Procesador de Hipertexto y es un lenguaje de programación interpretado de
propósito general, originalmente diseñado para desarrollo de aplicaciones web. El cóigo PHP
puede ser ejecutado mendiante una Interfaz de línea de comandos (CLI), embebido dentro
de código HTML o ser utilizado como dentro de una combinacion de varios formatos de
sistemas web, como por ejemplo administradores de contenido web y servidores web. El
lenguaje PHP es usualmente ejecutado por un interpretador de PHP implementado como un
módulo dentro un servidor web o como un archivo ejecutable CGI (Common Gateway
Interface).

4. ¿Qué es un lenguaje de Programación?

Dentro de los diversos tipos de lenguajes creados por el hombre, podemos separar los
que son naturales (utilizados entre organismos vivos) y los artificiales (creados para la
comunicación mediante artificios). Dentro de los lenguajes artificiales podemos encontrar el
código Morse, lenguajes simbólicos como DIN y NEMA… y entre muchos otros, también
podemos encontrar los lenguajes informáticos. Los lenguajes informáticos son aquellos
utilizados por las computadoras en general y dentro de esos lenguajes informáticos podemos
encontrar los lenguajes de programación; que son aquellos utilizados específicamente para
darle instrucciones a los procesadores.

Básicamente los lenguajes de programación son idiomas artificiales destinados a lograr


que la computadora realice determinadas acciones como cómputos e instrucciones, con la
finalidad que se proponga el programador. Mayormente lo que se busca es procesar datos
crudos y generar información refinada. Los lenguajes de programación pueden usarse para
crear programas que controlen el comportamiento físico y lógico de una máquina, para
expresar algoritmos con precisión o como modo de comunicación humana.

Estos lenguajes permiten especificar de manera precisa sobre qué datos debe operar una
computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo
una gran cantidad de opciones posibles. Todo esto, a través de un lenguaje que intenta ser
relativamente próximo al lenguaje humano o natural. Los lenguajes de programación están
formados por un conjunto de símbolos y reglas sintácticas y semánticas específicas que
definen su estructura y el significado de sus elementos y expresiones.

5. ¿Qué entiende por código fuente de un Programa?

El código fuente de un programa es la versión del programa que todavía no ha sido


compilada y enlazada como un código binario a ser ejecutado directamente en código
máquina. Es decir la forma de expresar el programa mediante el uso del lenguaje de
programación con el cual fue escrito originalmente por el programador. Es la versión más fácil
de entender por una persona y contempla todo el funcionamiento del programa incluyendo
todos sus algoritmos y líneas de código.

6. El lenguaje de programación no es directamente ejecutable por la


computadora. ¿Qué se debe hacer?

Para poder ejecutar un programa de forma que las instrucciones redactadas por el
programador puedan ser llevadas a cabo por el procesador es necesario primero traducirlo a
código binario. Los pasos para lograrlo son la compilación y el enlazado (linkeado); que se
detallan en el punto siguiente.

7. ¿Qué pasos se deben llevar a cabo para la implementación de un


programa ejecutable, un típico.exe para Microsoft?

El proceso de creación de un programa, también llamado software, es complejo y en


general representa mucho tiempo de trabajo de equipos de especialistas. Desde la
perspectiva de la ingeniería del software, la implementación de un programa cuenta con los
siguientes pasos:

1. Reconocer la necesidad de un programa para solucionar un problema o identificar la


posibilidad de automatización de una tarea.
2. Recopilar los requisitos del programa para definir qué es lo que debe hacer y para qué se
necesita.
3. Realizar el análisis de los requisitos del programa. Debe quedar claro cómo debe realizar el
programa las cosas que debe hacer; las pruebas que demuestren la validez del programa se
pueden especificar en esta fase
4. Diseñar la arquitectura del programa para descomponerlo en partes de complejidad
abordable.
5. Implementar el programa, lo que consiste en realizar un diseño detallado, especificando
completamente todo su funcionamiento.
6. Implantar o instalar el programa es ponerlo en funcionamiento junto con los componentes
que pueda necesitar (bases de datos, redes de comunicaciones,
etc.).
Finalmente para la implementación de un programa ejecutable –un típico.exe para
Microsoft– se deben llevar adelante dos pasos.

1. Compilación
En este paso se traduce un programa escrito en un lenguaje de programación a otro,
generando un programa equivalente que la máquina será capaz de interpretar.
2. Enlazado
Es el proceso que une el código de los módulos y bibliotecas que forman un programa para
generar el ejecutable final.

Estos dos pasos se pueden hacer por separado, almacenando el resultado de la fase de
compilación en un archivo objeto –un .obj para Microsoft o para Unix– para enlazarlo en
fases posteriores o crear directamente el ejecutable.

8. ¿Cuáles son los pasos del proceso de creación de un programa, desde el


punto de vista de la ingeniería?

Respondido en el ítem anterior.

9. Enumere las unidades de medida en Informática, partiendo de 1 Bit (1 o


0)

Generalmente se agrupan los fragmentos de información codificada en el sistema de


numeración binario (ceros y unos) en:

Bits (binary digit) que puede consistir de un único cero o uno.


Nibbles (cuatro bits)
Byte (o Word en algunos lenguajes primitivos) ocho bits, en C equivale a un int (entero) o
un char (caracter)
KiloByte (KB) (1024 Bytes)
MegaByte (MB) (1024 Kilobytes)
GigaByte (GB) (1024 MegaBytes)
TeraByte (TB) (1024 GigaBytes)
Y asi sucesivamente se van siguiendo las unidades agrupándolas de a 1024 (2exp10) y
utilizando la nomenclatura griega para su denominación.

10.¿Qué son los periféricos y cómo se clasifican?

Los periféricos son dispositivos que se conectan a la computadora –técnicamente a la


placa madre– para permitir la interacción entre el usuario y la computadora mediante el
ingreso y egreso de información.
El usuario ingresa información por medio de los periféricos de entrada, una vez que la
CPU la procesa, los resultados quedan listos para que el usuario los pueda recuperar con los
periféricos de salida.
Las computadoras tienen tres tipos de periféricos: de entrada, de salida y de entrada / salida.
Un periférico de entrada es una pieza de hardware que permite al usuario ingresar
información a la computadora para que sea procesada. Entre los más comunes tenemos: El
teclado, mouse, escáner, lápiz óptico, lector de código de barras, cámara web, etc.

Un periférico de salida se encarga de mostrar y representar la información procesada por la


computadora, en forma de texto, gráficos, dibujos o fotografías, entre otras formas. Entre los
más comunes tenemos: el monitor, la impresora, el proyector, pantallas y Leds de estatus de
funcionamiento, parlantes, plotters, cortadoras láser, máquinas de control numérico
computado (CNC) y en general cualquier dispositivo de control que funcione en lazo abierto,
es decir sin retroalimentación de información vital para su funcionamiento… Impresoras 3D,
etc.

Los periféricos de Entrada-Salida pueden guardar y recuperar información en un


soporte específico, se los suele llamar unidades de almacenamiento masivo. Algunos de ellos:
Disco rígido, disquetera, lectograbadora de CD/DVD, lectograbadoras de cinta magnética
(utilizados para backup de datos), módem, memorias USB, router, switch de red Lan, la placa
de red, dispositivos MIDI, Hubs USB, y cualquier máquina que esté conectada a la
computadora mediante un proceso de control de lazo cerrado, es decir que requiera
retroalimentación de información para su funcionamiento, como por ejemplo un afinador de
guitarra automático, un sistema de riego con sensor de humedad en el suelo, un variador de
intensidad lumínica de pantalla automático (con sensor de luz), etc.

Das könnte Ihnen auch gefallen