INTRODUCCIÓN A LA PROGRAMACIÓN
Enviado por somhek • 7 de Junio de 2014 • 1.695 Palabras (7 Páginas) • 258 Visitas
INTRODUCCIÓN A LA PROGRAMACIÓN
Una computadora es una máquina y, como otras máquinas, como un automóvil o una poda- dora, debe encenderse y luego conducirse, o controlarse, para hacer la tarea que se pretende realizar. En un automóvil, por ejemplo, el control es proporcionado por el conductor, quien se sienta en su interior y lo dirige. En una computadora, el conductor es un conjunto de ins- trucciones llamado programa. De manera más formal, un programa de computadora es un conjunto independiente de instrucciones usado para operar una computadora con el fin de producir un resultado específico. Otro término para un programa o conjunto de programas es software, y se usarán ambos términos de manera indistinta a través del texto.1 El proceso de escribir un programa, o software, se llama programación, mientras al conjunto que puede usarse para construir un programa se llama lenguaje de programación. Los lenguajes de programación disponibles se presentan en una variedad de formas y tipos.
Lenguaje de máquina En su nivel más fundamental, los únicos programas que pueden usarse en realidad para ope- rar una computadora son los programas en lenguaje de máquina. Tales programas, los cua- les también se conocen como programas ejecutables, o ejecutables para abreviar, consisten en una secuencia de instrucciones compuestas por números binarios como:2
11000000 000000000001 000000000010
11110000 000000000010 000000000011
Estas instrucciones en lenguaje de máquina constan de dos partes: una de instrucción y una de dirección. La parte de instrucción, a la cual se conoce como opcode (abreviatura de “có- digo de operación”), por lo general es el conjunto de bits en el extremo izquierdo de la ins- trucción y le indica a la computadora la operación a realizar, como sumar, restar, multiplicar, etc., mientras los bits en el extremo derecho especifican las direcciones de memoria de los datos que se van a usar. Por ejemplo, suponiendo que los ocho bits en el extremo izquierdo de la primera instrucción enlistada antes contienen el código de operación para sumar, y los siguientes dos grupos de doce bits son las direcciones de los dos operandos que se van a su- mar, esta instrucción sería un comando para “sumar los datos en la ubicación 1 de la me- moria a los datos en la ubicación 2 de la memoria”. Del mismo modo, suponiendo que el opcode 11110000 significa multiplicar, la siguiente instrucción es un comando para “mul- tiplicar los datos en la ubicación 2 de la memoria por los datos en la ubicación 3”. (La sec- ción 1.6 explica cómo convertir de números binarios a decimales.)
Lenguajes ensambladores Debido a que cada clase de computadora, como IBM, Apple y Hewlett Packard, tiene su pro- pio lenguaje de máquina particular, es muy tedioso y tardado escribir esos programas en len- guaje de máquina.3 Uno de los primeros avances en la programación fue la sustitución de
1De una manera más incluyente, el término software también se usa para denotar tanto los programas como los datos con los que operarán los programas. 2Revise la sección 1.6 al final de este capítulo si no está familiarizado con los números binarios. 3En la actualidad, el lenguaje en el nivel de máquina está definido por el procesador alrededor del cual está construida la compu- tadora.
Maq. Cap. 1 7/27/06 3:32 PM Page 2
31.1 Introducción a la programación
símbolos en forma de palabras, como ADD, SUB, MUL, por los opcodes binarios y los nú- meros decimales y etiquetas por las direcciones en memoria. Por ejemplo, usando estos sím- bolos y valores decimales para las direcciones en memoria, las dos instrucciones en lenguaje de máquina anteriores pueden escribirse como:
ADD 1, 2
MUL 2, 3
Los lenguajes de programación que usan este tipo de notación simbólica se conocen como len- guajes ensambladores. Debido a que las computadoras sólo pueden ejecutar programas en lenguaje de máquina, el conjunto de instrucciones contenido dentro de un programa en len- guaje ensamblador debe traducirse a un programa de lenguaje de máquina antes que pue- da ejecutarse en una computadora. Los programas traductores que realizan esta función para los programas en lenguaje ensamblador se conocen como ensambladores (véase la figura 1.1).
Figura 1.1 Los programas ensambladores deben traducirse.
Lenguajes de niveles bajo y alto
Tanto los lenguajes de máquina como los ensambladores se clasifican como lenguajes de ni- vel bajo. Esto se debe a que ambos tipos de lenguaje usan instrucciones que se vinculan en forma directa con un tipo de computadora. Como tal, un programa en lenguaje ensambla- dor está limitado porque sólo puede usarse con el tipo de computadora específica para el cual se escribió. Sin embargo, estos programas permiten usar las características especiales de un tipo de computadora particular y por lo general se ejecutan en el nivel más rápido posible. En contraste con los lenguajes de nivel bajo están los lenguajes de alto nivel. Un lengua- je de alto nivel usa instrucciones que se parecen a los lenguajes escritos, como el inglés, y pueden ejecutarse en una variedad de tipos de computadora. Visual Basic, C, C++ y Java son ejemplos de lenguajes de alto nivel. Usando C++, una instrucción para sumar dos números y multiplicarlos por un tercer número puede escribirse como:
resultado
...