Lenguajes de Programación. 4a. Sesión 2007-08-16

History[1]:

The first true general- purpose electronic computer was the ENIAC, which was constructed at the University of Pennsylvania between 1943 and 1946. However, ENIAC's underlying architecture was very different to that of modern computers. “When it was first built it could not store programs. Each new computation required moving plugs and jumper cables”[2]. During the course of designing ENIAC, it's creators, John William Mauchly and J. Presper Eckert Jr., conceived the concept of stored program computing.

This concept was subsequently documented by Johann (John) von Neumann in his paper which is now known as the “First Draft of a reporte to the EDVAC” ( June, 1945). The computer structure resulting from the criteria presented in the "First Draft" is popularly known as a von Neumann Machine, and virtually all digital computers from that time forward have been based on this architecture.)

The basic elements of a stored program computer (von Neumann Machine’s architecture) are:

1. A memory containing both data and instructions. Also to allow both data and instruction memory locations to be read from, and written to, in any desired order. The memory storages information coded in Binary Code (1’s and 0’s)

2. A calculating unit (ALU) capable of performing both arithmetic and logical operations on the data. It contains special registers ( Accumulators = Acc)

3. A control unit, which could interpret an instruction retrieved from the memory and select alternative courses of action based on the results of previous operations.


[1] http://www.maxmon.com/1946ad.htm

[2] Neveln, Bob. “Linux Assembly Language Programming” (2000) Prentice Hall PTR. N.J.


miércoles, 24 de septiembre de 2008

Practicando SLR

1.- Genera los estados de las siguientes producciones y coteja con los que aparece a continuación.

2.- Busca los follows de los No-Terminales y llena la matriz correspondiente.

1. lista’->lista
2. lista->( pritiva lista-arg)
3. pritiva-> +
4. pritiva -> /
5. lista-arg -> lista-arg , cte
6. lista-arg -> cte


Edo columna voy_estado
1 lista'▬► ♥lista lista 2
lista ▬► ♥( pritiva lista-arg ) ) 3

2 lista'▬► lista♥ -1

3 lista ▬► (♥pritiva lista-arg ) pritiva 4
pritiva▬► ♥+ + 5
pritiva▬► ♥/ / 6

4 lista ▬► ( pritiva♥lista-arg ) lista-arg 7
lista-arg ▬► ♥lista-arg , _CTE lista-arg 7
lista-arg ▬► ♥_CTE _CTE 8

5 pritiva ▬► +♥ -3

6 pritiva ▬► /♥ -4

7 lista ▬► ( pritiva lista-arg♥) ) 9
lista-arg ▬► lista-arg♥, _CTE , 10

8 lista-arg ▬► _CTE♥ -6

9 lista ▬► ( pritiva lista-arg )♥ -2

10 lista-arg ▬► lista-arg ,♥_CTE _CTE 11

11 lista-arg ▬► lista-arg , _CTE♥ -5



Follows para lista' lista lista-arg pritiva

miércoles, 20 de agosto de 2008

Números reales: IEEE754

Información extraída de:

http://es.kioskea.net/base/representation.php3
================================================================================

Se codificará el valor 525,5.

* 525,5 es positivo, por lo que el primer bit será 0.
* Su representación en el sistema binario (base 2) es: 1000001101.1
* Al normalizarlo, obtenemos: 1.0000011011*2^9
* Sumándole 127 al exponente, que es 9, da 136 o, en sistema binario (base 2): 10001000
* La mantisa está compuesta por la parte decimal de 525,5 en base 2 normal, que es 0000011011.
* Como la mantisa debe tomar 23 bits, se deben agregar ceros para completarla:
00000110110000000000000
* La representación binaria de 525,5 bajo el estándar IEEE 754 es, por lo tanto:
0 1000 1000 00000110110000000000000
0100 0100 0000 0011 0110 0000 0000 0000 (4403600 en sistema hexadecimal)

A continuación hay otro ejemplo, esta vez utilizando un número real negativo :
Se codificará el valor -0,625.

* El bit s es 1, como 0,625 es negativo.
* 0,625 se escribe en sistema binario (base 2) de la siguiente manera: 0.101
* Queremos escribirlo en la forma 1.01 x 2-1
* Consecuentemente, el exponente vale 1111110 como 127 - 1 = 126 (o 1111110 en sistema binario)
* La mantisa es 01000000000000000000000 (sólo se representan los dígitos después del punto decimal, ya que el número entero es siempre equivalente a 1)
* La representación binaria de 0,625 bajo el estándar IEEE 754 es, por lo tanto:
1 1111 1110 01000000000000000000000
1111 1111 0010 0000 0000 0000 0000 0000 (FF 20 00 00 en sistema hexadecimal)

domingo, 20 de enero de 2008

martes, 15 de enero de 2008

Lenguajes de Programación de AltoNivel


Paradigmas o Modelos de los Lenguajes de Programación


From: mavega, 1 minute ago





Presentación para la clase de Lenguajes de Programación

martes, 2 de octubre de 2007

jueves, 30 de agosto de 2007

Repaso


Lenguajes de Programación


From: mavega, 1 minute ago





Temas vistos durante primeras sesiones de la materia Lenguajes de Programación