Está en la página 1de 32

Introduccin a la Computacin

Prof. Ing. Oscar Tinoco Gmez

Arquitectura de un computador

HARDWARE

SOFTWARE

Parte fsica de un

Parte lgica de un

Ordenador

Ordenador

(Computadora)

HARDWARE
Unidad Central de Proceso
Dispositivos de entrada/salida
Memoria

Estructutra bsica Hardware

Hardware El CPU
Es el cerebro del ordenador
Componentes del CPU:

Unidad Aritmtico-Lgica (ALU) lleva a cabo


el procesamiento de los datos ejecutando las
instrucciones
Unidad de Control coordina la operacin del
ALU y de los dems recursos de la computadora
Registros memoria interna al CPU que contiene
la instruccin que se ejecuta y los datos que
requiere esa instruccin

Dual-Core, de Intel,
permite compartir el
doble de los recursos del
procesador, con trabajo
coordinado de ambas
partes. Reduce la mitad
del tiempo de trabajo en
los procesos de una
computadora.

Hardware Memoria Principal


Contiene las instrucciones que componen los
programas y los datos que stos necesitan procesar
Conectada directamente al CPU
Dos tipos principales:
RAM (memoria de acceso aleatorio) temporal,
voltil;
ROM (memoria slo para lectura) permanente,
contiene los programas que permiten que la
computadora arranque.
Cach: Acceso rpido. Puente entre el CPU y la RAM

Representacin en Memoria

Elementos que pueden estar en dos estados


(prendidos o apagados).

El sistema de numeracin binario:


representacin de este tipo de datos. Utiliza
slo dos smbolos: el 1 y el 0.

Hardware Memoria Secundaria


Permite almacenar datos e instrucciones por
largos periodos de tiempo
Estos datos e instrucciones deben ser
llevados a memoria principal para poder ser
procesados
Es mucho ms lenta que la RAM
Algunos ejemplos:

Disco duro
CD, DVD
Diskette
Dispositivos USB

Cdigo Binario
Cada

1 en un nmero binario representa


una potencia de 2 segn su posicin
Ejemplo: El nmero binario 100110
representa el valor 38
1

25

24

23

22

21

20

1*32 0*16 0*8 1*4 1*2 0*1 38

Medida de la Memoria
BIT:

Unidad bsica de informacin que


corresponde a un nico dgito binario
(puede tomar los valores 1 0).

BYTE:

conjunto de 8 bits. 256 valores


diferentes: desde el 00000000 (0 en
decimal) al 11111111 (255 en decimal).

Cantidades de Memoria
1 Kilo Byte = 210 Bytes = 1024 Bytes
1 Mega Byte = 210 KBytes = 220 Bytes
= 1048576 Bytes
1 Giga Byte = 210 MBytes = 230 Bytes
1 Tera Byte = 210 GBytes = 240 Bytes

Almacenamiento de Informacin
Nmeros Enteros:
Son representados utilizando 2, 4 u 8 bytes.
2 bytes:
rango(0 - 65536) enteros sin signo.
rango(-32767 - 32768) enteros con signo.

Almacenamiento de Informacin
Nmeros Reales:
Se representan utilizando dos esquemas:
Punto Flotante: Real representado como un
entero y un byte adicional que indica la
posicin del punto.
Punto Fijo: Real representado como una
mantisa
y
un
exponente;
que
son
representados como enteros.
12345.6789 es representado como:
Mantisa = 1.23456789
Exponente =104
pues 1.23456789*104= 12345.6789

Almacenamiento de Informacin
Alfanumricos:
representados en codificacin ASCII, se
asigna a cada carcter un valor numrico
representado por un byte.
Ejemplo: el carcter A mayscula es
representado por el byte 1000001 (65 en
decimal), la letra B mayscula por el byte
66 en decimal y as sucesivamente.

Almacenamiento de Informacin
Existe un cdigo ASCII para cada carcter
representable
(lista
utilizada
en
los
Laboratorios), algunos ejemplos:
Espacio
;
*

0
1
a
9

32
59
42
162
48
49
97
57

Software
Software: conjunto de instrucciones que le
indican al hardware que hacer.
Lenguaje de programacin: lenguaje que
permite escribir un software.
Programa: conjunto de rdenes en un
lenguaje de programacin especfico con un
propsito definido.

Arquitectura de Software
Lenguaje
Alto Nivel

Lenguaje
Lenguaje
Ensamblador Maquina

Hardware

Sistema Operativo

Aplicaciones

Herramientas

Lenguaje de Mquina
nico

lenguaje que entiende el hardware


(mquina).
Especfico para cada hardware (procesador,
dispositivos, etc.).
Usa exclusivamente el sistema binario.
Estructura de una instruccin:

CDIGO ARGUMENTO(S)

Programa:

almacenado
en
contiene instrucciones y datos.

memoria,

Lenguaje de Mquina
Es

propio de cada ordenador (se relaciona


con el diseo del hardware y depende de
l)
En general son combinaciones de ceros y
unos (Sistema binario)
Operaciones bsicas:

Cargar
Almacenar
Sumar
Restar

Lenguaje Ensamblador
Usa mnemnicos (palabras cortas escritas con
caracteres alfanumricos), para codificar las
operaciones. Los datos y/o direcciones son
codificados generalmente como nmeros en
sistema hexadecimal.

Es

especfico (aunque no nico) para cada


lenguaje de mquina.

Estructura de una instruccin:

MNEMONICO ARGUMENTO(S)

Lenguaje Ensamblador
ENSAMBLADOR:
software,
generalmente
escrito en lenguaje de mquina, capaz de
traducir de lenguaje ensamblador a lenguaje de
mquina.
CARGADOR: software que almacena en
memoria el programa en lenguaje de mquina
generado por el ensamblador.

Lenguaje de Alto Nivel

Permite
a
los
programadores
escribir
instrucciones en un lenguaje ms familiar para
ellos (los programadores) y que contiene
notaciones matemticas comnmente utilizadas
(independiente de la mquina)
Basado en una estructura gramatical que
permite el anidamiento de instrucciones
Cuenta con un conjunto de palabras reservadas,
para codificar estructuras de control y/o
instrucciones.

Lenguaje de Alto Nivel

Permite el uso de smbolos aritmticos y/o


relacionales.
Permite
al
programador
olvidarse
del
direccionamiento de memoria.
En general: permite la realizacin de programas
independiente del Hardware.
Los lenguajes de alto nivel permiten portabilidad, menor
posibilidad de cometer errores y una visin ms amplia
para resolver problemas.

Lenguaje de Alto Nivel


Tal como ocurre con los lenguajes
ensambladores, el ordenador no entiende
directamente lenguaje de alto nivel, por lo
que requiere de un compilador
COMPILADORES e INTERPRETES: software
capaz de traducir de un lenguaje de alto nivel
al lenguaje ensamblador especfico de una
mquina.

Lenguajes de Alto Nivel


Java C C++ - Cobol Prolog LISP ADA
Basic Visual Basic Pascal - etc
Lenguaje de
Alto Nivel

Usuario final

Lenguaje
Ensamblador
Lenguaje de
Mquina

Ordenador

Sistema Operativo

Conjunto de programas de computadora destinado a


permitir una administracin eficaz de sus recursos.
Ofrece un conjunto de primitivas a otro software, que le
permiten a este ultimo ser tan independiente de la
arquitectura de hardware como le es posible.
Puede ser escrito en lenguaje de alto nivel, en lenguaje
ensamblador y/o en lenguaje mquina.
Funciones Bsicas:
Suministro de interfaz al usuario,
Administracin:
de recursos,
de archivos,
de tareas.
Servicio de soporte y utilidades.

Aplicaciones
APLICACIN: software que le permite al
computador realizar una tarea especfica y
con el cual no se puede construir otro
software.
Ejemplos: procesadores de texto como
WORD, las hojas electrnicas como EXCEL,
AutoCad, SPSS, Ms Project, etc.

Herramientas
HERRAMIENTA:
software
construido
especialmente para el desarrollo de nuevo
software, (tanto de aplicaciones como de
herramientas).
Ejemplos: compiladores como TURBO C,
ambientes integrados de desarrollo, etc.

Arquitectura de Software
Lenguaje
Alto Nivel

Lenguaje
Lenguaje
Ensamblador Maquina

FOR i:=1 TO 10 DO
BEGIN
j :=j+i;
END;
.
.

Hardware

.
.
0010 00011010
1010 10111000
0101 11010001
.
.

.
.
ADD R1 F4
MOV F4 C2
.
.

Sistema Operativo
Print(Document)

Aplicaciones

<Enter> Hwnd=CreateWindow(10,10,200,200)

Herramientas

Del Lenguaje de Alto Nivel al Programa


Ejecutable
Cdigo Origen

Cdigo Objeto

Preprocesador

Enlazador

Cdigo Origen
Modififcado

Compilador

Cdigo Ejecutable

Ejemplo de un Programa C++


#include <iostream.h>
int main()
{
const double PI = 3.1416;
double radio, areacirculo;
cout << Ingrese el radio del crculo: ";
cin >> radio;
areacirculo = PI * radio * radio;
cout << El rea es: " << areacirculo << endl;
return 0;
}

También podría gustarte