Fundamentos de Programacion

Descargar como docx, pdf o txt
Descargar como docx, pdf o txt
Está en la página 1de 8

Conceptos Básicos

1. Computador u ordenador

Es una colección de circuitos integrados y otros componentes relacionados que puede


ejecutar con exactitud, rapidez y de acuerdo a lo indicado por un usuario o
automáticamente por otro programa, una gran variedad de secuencias o rutinas de
instrucciones que son ordenadas, organizadas y sistematizadas en función a una amplia
gama de aplicaciones prácticas y precisamente determinadas, proceso al cual se la ha
denominado con el nombre de programación y al que lo realiza se le llama programador.
La PC, está compuesto por:

Hardware. (Hard = Duro)

El hardware se refiere a los componentes materiales de un sistema informático. La función


de estos componentes suele dividirse en 4 categorías principales:

 Microprocesador (CPU)
 Memoria (MP)
 Periféricos (E/S)
 Buses

Representación lógica de una PC

a. Procesador o CPU. La unidad central de procesamiento, o simplemente el


procesador o microprocesador, interpreta las instrucciones contenidas en los
programas y procesa los datos. Los CPU proporcionan la característica
fundamental de la computadora digital (la programabilidad) y son uno de los
componentes necesarios encontrados en las computadoras de cualquier
tiempo, junto con el almacenamiento primario y los dispositivos de
entrada/salida.1, la CPU está compuesta básicamente por:

 Unidad Aritmético Lógica, (Siglas en inglés de arthmetic logic unit), es


un circuito encargado de calcular operaciones lógicas (si, y, o, no) y
aritméticas (como suma, resta, multiplicación, etc.).

 Unidad de Control, elemento encargado de sincronizar las acciones


que realiza cada una de las unidades funcionales de un computador.
 El reloj (Clock), Generan impulsos eléctricos binarios para ejecutar o
procesar las instrucciones esta frecuencia son las que controlan la
operación de todos los circuitos de la PC. La fecuencia mide en
ciclos/segundo o Hertzios, en la actualidad las velocidades son
superiores a e 2.5 Giga Hertzios, es decir, 2.5 x 109 ciclos /segundo o
hertzios.

 El registro, es una memoria de alta velocidad y poca capacidad,


integrada en el microprocesador, que permite guardar
transitoriamente y acceder a valores muy usados, generalmente en
operaciones matemáticas.

b. La memoria principal (MP). Está for4mada por bloques de circuitos integrados


o chips capaces de almacenar, información digital (valores binarios) a dichos
bloques tiene acceso el microprocesador de la CPU mediante el bus de
direcciones. La memoria de la PC se clasifica en dos:

 Memoria ROM, (read-only memory) o memoria de sólo lectura, es la


memoria que se utiliza para almacenar los programas que ponen en
marcha el ordenador y realizan los diagnósticos. Ejemplo el BIOS ROM.

 Memoria RAM o memoria de acceso aleatorio (Random Acces


Memory). Es la memoria del usuario que contiene de forma temporal
el programa, los datos y los resultados que están siendo usados por el
usuario del computador. En general es volátil, pierde su contenido
cuando se apaga el computador, es decir que mantiene los datos y
resultados en tanto el bloque reciba alimentación eléctrica, a
excepción de la CMOS RAM.

c. Periféricos E/S. Son dispositivos que se conectan a la PC y controlados por


ella, estos dispositivos se dividen en tres:

 Entrada. Dispositivos por donde ingresan la información.


 Salida. Dispositivos de salida de información.
 Entrada y salida. Generalmente son unidades de disco por donde
ingresan y sale la información.

d. Bus. Es un conjunto cableado que sirve para que los dispositivos hardware
puedan comunicarse entre sí. Lo buses se dividen en tres:
 Bus de datos, trabaja en conjunción con el Bus de Direcciones para
transportar los datos a través del computador. El tamaño puede ser
de 16, 32 o 64 bits.
 Bus de control, es parte del bus de la computadora (la conexión
física), que es utilizado por la CPU para comunicarse con otros
dispositivos. El bus de control transmite comandos desde la CPU y
devuelve una señal de estado desde el dispositivito.
 Bus de Direcciones, es un canal del microprocesador totalmente
independiente del bus de datos donde se establece la dirección de
memoria del estado en tránsito. Las direcciones de memoria son
números naturales (en hexadecimal) que indican la posición de los
datos dentro de la memoria principal.

2. SOFTWARE (SOFT = SUAVE)

Son programas de computadoras. Instrucciones responsables de que el hardware (la


máquina) realice su tarea. Como concepto general, el software puede dividirse en varias
categorías basadas en el tipo de trabajo realizado. A fines prácticos se puede clasificar al
software en tres grandes tipos:

Software de sistema. Su objetivo es desvincular adecuadamente al usuario y al


programador de los detalles de la computadora en particular que se use, aislándolo
especialmente del procesamiento referido a las características internas de: memoria,
discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El
software de sistema le procura al usuario y programador adecuadas interfaces de alto
nivel, herramientas y utilidades de apoyo su mantenimiento. Incluye entre otros:

 Sistemas operativos
 Controladores de dispositivos
 Herramientas de diagnostico
 Herramientas de Corrección y Optimización
 Servidores
 Utilidades

Software de programación. Es el conjunto de herramientas que permiten al programador


desarrollar programas informáticos, usando diferentes alternativas y lenguajes de
programación, de una manera práctica. Incluye entre otros:

 Editores de texto
 Compiladores
 Intérpretes
 Enlazadores
 Depuradores
 Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas,
usualmente en un entorno visual, de forma tal que el programador no necesite
introducir múltiples comandos para compilar, interpretar, etc.
Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).

Software de aplicación. Es aquel que permite a los usuarios llevar a cabo una o varias
tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o
asistido, con especial énfasis en los negocios. Incluye entre otros:

 Aplicaciones para control de sistemas y automatización industrial


 Aplicaciones ofimáticas
 Software educativo
 Software empresarial
 Bases de datos
 Telecomunicaciones (por ejemplo Internet y toda su estructura lógica)
 Videojuegos
 Software médico
 Software de Cálculo Numérico y simbólico
 Software de Diseño Asistido (CAD)
 Software de Control Numérico (CAM)

3. LENGUAJE DE PROGRAMACIÓN

Se define como un lenguaje artificial que permite desarrollar software mediante el uso
de conjunto de sintaxis y reglas semánticas para dar instrucciones a la computadora,
también podemos considerar un programa para crear programas. El primer compilador
fue desarrollado por Grace Hopper 1951, trabajando para Remington Rand, comenzó el
trabajo de diseño del primer compilador conocido ampliamente, el A-0, el cual, al ser
liberado por la compañía en 1957, lo hizo con el nombre de MATHMATIC.

El primer lenguaje de programación


PROGRAM SUMA
ampliamente conocido y exitoso fue
FORTRAN (The IBM Mathematical Formula RAL A, B, C

Translating Sytem), desarrollado entre 1954 y READ (*,*) A, B


1957 por un equipo de investigadores en IBM
C= A + B
liberados por John Backus. El éxito de
FORTRAN condujo a la creación de un comité WRITHE (*,*) ‘La suma es’: C

de científicos para desarrollar un lenguaje de END


programación “universal”; el resultado de su
esfuerzo fue ALGOL 58 (Algorithmic
Language).

Lenguajes de programación por su nivel de abstracción

a. Lenguaje máquina. Es aquel con el que


operación Código
trabaja el microprocesador; para
reaccionar y efectuar la operación que Cargar registro 001
se desea, necesita de una secuencia de Almacenar registro 010
señales eléctricas almacenadas como Sumar en registro 011
“unos” y “ceros” en las posiciones de la aritmético
memoria. Restar en registro 100
Una y solo una secuencia de señales aritmético
concreta, realiza una determinada Saltar si contenido cero 101
operación. Identificaremos a partir de ahora Saltar si contenido no 110
la existencia de señal con un “1” y la cero
ausencia con un “0”. Decrementar registro 111
Índice

En los primeros tiempos de la


Tabla de registros en lenguaje máquina
informática los programas se
ingresaban en el ordenador
directamente en código de maquina (binario), indicando uno por uno el valor de los
bits de cada una de las posiciones de memoria. Para ello se insertaban manualmente
cables en un panel de conectores: cada cable insertado en un conector representaba
un cero.

b. Lenguaje de programación de bajo nivel. Constituye la representación más directa


del código máquina específico para cada arquitectura de computadoras legible por
un programador mediante un símbolo. Pronto se diseñaron notaciones que
simplifican la programación: cada instrucción de código de maquina se representaba
mediante un código mnemotécnico, es decir, una abreviatura fácil que corresponden
a las instrucciones de código máquina para un microprocesador específico ejemplo:
Operación Código Mnemónicos
Máquina

Cargar registro 001 CA


Almacenar registro 010 AL
Sumar en registro 011 SUM
aritmético
Restar en registro 100 RES
aritmético
Sallar si contenido 101 SC
cero

Sallar si contenido 110 SNC


no-creo

Tabla de registros de instrucciones nmemónicos y su equivalencia

c. Lenguaje de programación de alto nivel. En los lenguajes de alto nivel las


instrucciones son independientes de la máquina, son más fáciles de aprender porque
están formados por elementos de lenguajes naturales (del inglés), pero precisan de
un programa intérprete o compilador que traduzca este lenguaje de programación
de alto nivel a uno de bajo nivel para que la computadora pueda entender.

Algoritmo C++ Python


Leer cin Input
Escribir cout Print
Sumar + +
Incrementar ++ ++
Decrementar -- --
Mientras while While
Retomar return Return

Sentencias de programación de alto nivel se observa que tiene interpretación


humana

Generación de lenguajes de programación

Al igual que la evolución de la computadora han pasado por cuatro generaciones, de las que las
tres primeras (ordenadores con válvulas, transistores y circuitos integrados), la cuarta
(microprocesadores), los lenguajes de programación ha sido evolucionando. Estas generaciones se
aproximan a esa relación, y son las siguientes:

Lenguajes compilados e interpretados

Son dos formas de efectuar el código fuente uno genera un archivo ejecutable y el otro genera un
archivo, así podemos observar:
Secuencia de proceso de compilación

El programador, con ayuda de una herramienta de editor genera un código fuente y el lenguaje de
alto nivel elegido, el programa (que incluye todas las definiciones de variables y estructuras de
datos, así como el algoritmo). Esto constituye el denominado código fuente. A continuación se
realiza la traducción del código fuente. A continuación se realiza la traducción del código fuente al
lenguaje maquina para el entendimiento del microprocesador. Los programas que realizan esta
labor son los compiladores e intérpretes.

También podría gustarte