You are on page 1of 21

Procesadores Intel Historia Modelo 8086 8088 80286 80286 80386 SX Ao 1978 1979 1982 1982 1988 Capacidad

Tamao Memoria Palabra Direccionada 16 16 16 16 32 32 32 32 32 32 1 MB 1 MB 16 MB 16 MB 4 GB 4 GB 4 GB 4 GB 4 GB 4 GB 16 bits 8 bits 16 bits 16 bits 32 bits 16 bits 32 bits 32 bits 32 bits 64 bits Procesador Lanzamiento del Bus

80386 DX 1985 80486 DX 1989 80486 DX 1989 80486 SX Pentium 1985 1993

CRONOLOGIA DEL CHIP Y DEL PROCESADOR 1969 El italiano Federico Faggin inventa la "compuerta de silicn". 1971 Intel presenta en el mercado el primer microprocesador: el 4004, fabricado bajo contrato para la compaa de calculadoras Busicom. 1972 Intel anuncia el 8008, dos veces ms rpido que el 4004. 1977 Introduccin de los microprocesadores 6502 (1 MHz), 6510 (2 MHz) y Z80 (4 MHz). 1978 Aparicin del Intel 8088. 1982 Aparicin del Intel 80286. 1985 Introduccin del Intel 80386. Inclua 275,000 transistores (100 veces los que tena el 4004). Primer chip multitarea de 32 bits. 1989 Intel 80486. Inclua co-procesador matemtico en el mismo chip. 1993 Introduccin de la familia Intel Pentium. 1995 Intel Pentium Pro, 5.5 millones de transistores.

1997 Intel Pentium II, 7.5 millones de transistores. 1999 Intel Pentium III; incorpora 70 nuevas instrucciones para video e Internet. 2000 Intel Pentium IV, 0.18 micras y velocidades iniciales de 1.5 GHz. 2003 Aparicin de los procesadores G5 para computadoras Apple. Primeros procesadores de 64 bits.

3000 a.C. 1800 a.C. 1642 1673

Se inventa el baco, probablemente en Babilonia

Los matemticos babilonios desarrollan algoritmos para resolver problemas numricos

y y

Blaise Pascal construye la primera mquina calculadora numrica en Pars. Gottfried Leibniz construye una mquina calculadora mecnica que multiplica, divide, suma y resta. Benjamin Franklin descubre la electricidad Joseph Jacquard automatiza los telares mediante las cintas de papel perforado, que suministran los dibujos de las telas. Es el primer sistema automtico de introduccin de datos en una mquina.

1780 1805

y y

1822

Charles Babbage construye la mquina de diferencias, que soluciona polinomios de segundo grado.

1833

Mquina Analtica de Babbage

1842

Ada Byron, Contesa de Lovelace e hija de Lord Byron, el poeta, documenta el trabajo de Babbage y escribe programas para la mquina. Es considerada la primera programadora de la historia Se patenta la rueda Odhner, industrializndose la produccin de sumadoras. Barbour inventa el impresor de datos. Se introduce el teclado en las mquinas sumadoras. George Stibitz construye el ComplexCalculator, la primera sumadora de rels. La empresa Tabulating Machine Company, fundada en 1896, cambia de nombre por el de International Business Machines Corporation (IBM). La compaa Hewlett-Packard se funda para crear equipos electrnicos

1875

1884 1923 1924

y y y

1938

1939 Primera Generacin de Ordenadores 1941 1942 1944


y y y

Konrad Zuse construye el Z3, la primera calculadora Electromecnica de propsito general. ABC de Aransoffy y Berry Howard Aiken e I.B.M desarrollan el Mark-1, la primera calculadora electromec nica

1946

Mauchly y Eckert construyen el ENIAC, el primer ordenador electrnico.

1947 1948

y y

Es inventado el transistor en los Laboratorios Bell IBM construye la SSEC (Selective Squense ElectronicCalculator) con 12.000 tubos de vidrio al vaco y 21.000 rels electromecnicos. Es inventado el transistor por William Bradford Shockley Mauchly y Eckert construyen para la Remington Rand Co. el UNIVAC, el primer ordenador electrnico comercializable. John von Neumann consigue terminar el EDVAC, un ordenador electrnico con programacin por cinta perforada. 701 de IBM

1949

1953

1957 Segunda Generacin de Ordenadores 1957


y y

PDP 1 de la Digital EqupmentCorporation (DEC) Univac II Circuito Integrado por Jack Kilbry

1958

1960 1962

y y

Aparece en el mercado el primer disquete IBM presenta su modelo 1311, usando disquetes

1964 Tercera Generacin de Ordenadores

1964

y y

IBM 360 marca el inicio de la Tercera Generacin BASIC (Beginners All-purpose Symbolic Instruction Language) escreadopor Tom Kurtz.

1965 1966

Digital Equipment saca su primera mini computadora la PDP-8 Texas Instruments lanza su primera calculadora de bolsillo en estado slido

1971 Cuarta Generacin de Ordenadores 1971


y y

Procesador 4004 de Intel Kenbak I Procesador 8008 de Intel se inventa la primera calculadora de bolsillo, fabricada por Jack Kilby, Jerry Merryman y Jim Van Tassel Gary Kildall escribe el PL/1, primer lenguaje de programacin para el microprocesador Intel 4004 Procesador 8080 de Intel Altair 8800 de Mits, se considera el primer microordenador o ordenador personal (PC). Antes de ste los ordenadores slo estaban al alcance de las empresas por sus altos costos. Bill Gates y Paul Allen crearon Basic para el Altair. Luego fue incluido en el equipo y con el tiempo se convirti en un estndar para los PC Stephen Wozniak termin la construccin de el ordenador Apple I para Hewlett-Packard. El equipo tena procesador 6502 1 Mhz y 8K de RAM En abril se crea Apple Computer Procesador Z80 de Zilog ShugartAssociatesintrujo el diskette de 5,25

1972

y y

1974 1975

y y

1976

y y y

Commodore International construye la Pet 2001. El Pet fue el primer ordenador personal con pantalla incorporada.

1977 Apple comercializa el Apple II. Tena procesador MOS 6502, 16K de RAM, teclado, monitor, caja de plstico y conexin para cassette de cinta 1978
y y

Apple y Radio Shack sacaron al mercado unidades de 5,25 pulgadas. Epson saca la impresora matriz de punto MX 80 Procesador 8088 de Intel, utilizado luego en el IBM PC Primer disco Duro para micros creado por SeagateTechnology (5 MB) Commodore VIC 20 tena procesador MOS 6502, 5K de RAM, almacenamiento en cassette, monitor a color y conexin para mdem. Apple III. No tuvo xito ya que tena muchos fallos. Nace el MS-DOS

1979 1980

y y y

y y

1981 La Generacin del PC 1981


y

IBM saca al mercado el IBM/PC. Tena procesador 8088 de 4,8Mhz, 64K de RAM y una o dos unidades de disquete de 5,25 con 160K de capacidad, as mismo inclua el MS-DOS.

Smartmodem 300 de Hayes. Lleg a ser estndar de la Industria de los mdem.

Disquete de 3,5 pulgadas creado por Sony. Con el mismo tamao que el actual aunque con menor capacidad. Se vendieron 1,4 millones de ordenadores.

1982

y y y

Procesador 80286 de Intel Primer clon del IBM PC desarrollado por Columbia Data Products se crea CompaqComputer

1983

IBM XT. Versin mejorada del IBM PC. Tena disco duro de 10 MB y una versin un poco mejor del MS-DOS (2.0). Lotus 1-2-3 desplaza a VisiCalc como hoja de clculo preferida en el mercado La venta total de ordenadores en EEUU excede los 10 millones de unidades Procesador 80486 de Intel Complex de HeadstarTecnologies Primer ordenador con unidad de Cd Rom El Tandy 100 se convierte en el n1 en venta de PC compatibles en su primer ao Sale a la venta el sistema operativo Microsoft, Windows 1.0 que incluye MS-DOS , calculadora, calendario, reloj, Panel de Control y Note Pad Aldus introduce PageMaker para la Macintosh y empieza la era de la edicin del escritorio Segunda versin de Windows, el Windows 2.0. Ofrece mejoras de uso, adicionar iconos y permitir la superposicin de ventanas IBM introduce en abril la serie PS/2 y vende 1 milln de unidades el primer ao. Un gusano se difunde en Internet infectando a ms de 6.000 servidores. En mayo aparece Windows 3.0 con una interfaz mucho ms importantes que la de sus antecesores Se cre el Multimedia PC Advances Micro Devices anuncia su AMD 386 para competir con Intel 386 Microsoft lanza el MS-DOS 5.0 con gran xito Llega la saga del Windows 3.1 y 3.11, as como su variante para trabajo en grupo. Intel anuncia que su prximo microprocesador se llamar Pentium en lugar de 586 Procesador Pentium de Intel con velocidades de 60 y 66 MHz Unidades CD-R que permita grabar datos en CD Newton lanzado por Apple. Nueva generacin de ordenadores denominados asistentes digitales personales (PDA) Microsoft lanza Windows NT Compaq sobrepas a IBM en ventas de PC en el mundo.

y y

1984

y y y

1985

1987

1988 1990

y y

1991

y y y

1992

y y

1993

y y y

1994

Sale a la venta el sistema operativo Linux 1.0 Procesador Pentium Pro de Intel Lanzamiento del sistema operativo Windows 95, un entorno multitarea con interfaz simplificada y con otras funciones mejoradas. Unidades de DVD-ROM Unidades de CD-RW que permiten grabar y borrar informacin en CD El 8 de enero de este ao Intel anuncia el lanzamiento del microprocesador Pentium con tecnologa MMX Procesador Pentium II de Intel Procesador K6-2 de AMD Apple lanz el iMac con un diseo futurista Unidades DVD-RAM que permiten escribir discos de DVD Windows 98, con la integracin del WEB en el escritorio, el active desktop, y la presencia del programa Internet Explorer 4.0. Procesador Pentium III de Intel Procesador Althon de AMD Lanzamiento de Windows 2000 y Me (MilleniumEdition). Procesador Pentium IV de Intel ltimo sistema operativo de la empresa Microsoft Windows hasta el momento, el Windows XP (Experience

1995

y y

1997

y y y

1998

y y y y y

1999

y y

2000 2001

y y y

Procesadores A continuacin tenemos una lista de aquellos procesadores que en un momento determinado de la historia han revolucionado el mundo de la informtica, o cuando menos han tenido su importancia y aportacin a la informtica: 6502 68030 8086 80286 80387 80487 6585 68040 8088 80287 80387SX 80586 6800 6845 8087 80386 80486DX 68000 68881 8514/A 80386 SX 80486DX2 68020 8080 88000,88100,88200 80386 SL 80486SX

80286: La tecnologa continu avanzando e Intel sac al mercado el procesador 80286, totalmente compatible con el 8088 y 8086, y compartiendo el mismo conjunto de instrucciones que estos ltimos. La diferencia entre el 80286 y los anteriores radica en el tipo de trabajo que este procesador puede realizar, puesto que permite trabajar en dos modos distintos y conseguir la multitarea. Puede trabajar el modo real exactamente igual al 8088 y 8086, direccionando como mximo 1 Megabyte, y en modo protegido, reservando memoria para distintos programas de manera que puede ejecutar varios programas al mismo tiempo. La velocidad de este procesador est comprendida entre 8 MHz y 16 MHz, pudindole aadir un coprocesador matemtico 80287 de manera que la rapidez en el calculo sea considerable. Volver

80386: Intel continu investigando y desarroll un procesador de 32 bits reales, el doble que el 80286, lo que implica un aumento de velocidad en el proceso ya que el procesador puede leer datos de 32 bits y no de 16 como con los anteriores procesadores. Esto ya nos parece algo ms normal para nuestros das, puesto que la cantidad de informacin que vamos a manejar es tan impresionante que incluso estos modernos procesadores no satisfacen del todo nuestras necesidades. El procesador dispone de ms registros para el trabajo con los datos y las direcciones de memoria; tiene incluso un mtodo de gestin de memoria muchsimo ms moderno que el del 80286 y, lo ms importante, sigue siendo compatible con el 8086. Esto significa que la mayora de las aplicaciones que se desarrollaron para los antiguos procesadores pueden funcionar en cualquiera de los nuevos. Hay los quienes sugieren que los procesadores basados en el estandar 8088, como por ejemplo el 80386, no hacen sino perpetuar una serie de ventajas de diseo del procesador... y tambin de sus errores. De hecho, diversas opiniones tienden a indicar un cambio en la filosofa de los mismos. Si an no

tiene previsto comprar un ordenador (o no tiene previsto cambiar), siga con relativo inters la evolucin del reciente PowerPC desarrollado por IBM, Apple y Motorola. La velocidad de proceso de datos aumenta y se pueden encontrar modelos en el mercado desde 16 MHz hasta 33 MHz aunque algunos fabricantes han conseguido un procesador a 40 MHz. Este tipo de procesadores se consideran actualmente validos, siempre y cuando no se empleen aplicaciones que necesiten grandes capacidades de proceso. Existen distintos tipos de procesadores 80386: el 80386DX (del que hemos hablado), el 80386SX y el 80386SL. Volver

80386SX: La norma general es que el 80386 necesita que todos los circuitos de soporte sean de 32 bits, lo cual encarece bastante el precio del producto. Debido a esto, Intel present el 80386SX como una opcin ms comercial para abaratar los costes del 80386 inicial. El 80386SX consiste en un 80386 con un bus de datos de 16 bits de manera que el procesador es ms rpido pero est limitado en la parte positiva por el tipo de arquitectura aunque, como ya hemos comentado, el precio disminuye considerablemente. La velocidad del procesador est determinada, en parte, por la arquitectura. Existen versiones 16 MHz y de 20 MHz. Consideramos que este procesador es idneo para jugar, si bien existen juegos que precisan ordenadores ms potentes. Es algo anticuado, a nuestro parecer, aunque todava existen muchas marcas que los comercializan como parte baja de la gama, esto implica que este ordenador tiene muchas posibilidades de que, en breve, se quede obsoleto. Volver

80386SL: Otro componente de la familia de los 80386 es el SL, que es idntico al 80386 puro pero preparado para tener un menor consumo. La razn de que pueda variar su consumo va en funcin del tipo de velocidad que desarrolla, lo que implica que puede tener un reloj que de una frecuencia entre 3,1 MHz y 25 MHz, dependiendo del uso que se le d en cada momento al procesador. La aplicacin de este tipo de procesadores es claramente para los NoteBook o porttiles, los cuales tienen problemas de autonoma en cuestin de bateras, de manera que este procesador economiza las bateras. Volver

8088: Se trata del primer procesador que emple IBM, el 8088. Posee 16 bits, aunque el bus es de 8 bits, pudiendo, por tanto, manejar datos de 16 bits empleando dos ciclos de reloj. Puede direccionar hasta 1 Megabyte de memoria y tiene una velocidad de reloj de 4,77 MHz. Volver

8086: Seguidamente Intel elabor una versin mejorada del procesador 8088, sustituyendo el bus de datos de 8 bits por uno de 16 bits, de manera que ya se poda trabajar verdaderamente con datos de 16 bits. Naci entonces el 8086. La frecuencia de trabajo de estos procesadores se duplica respecto a su predecesor puesto que slo necesita un ciclo de reloj para trabajar con datos de 16 bits. Dicha velocidad se traduce en 8 MHz, aunque Intel elabor un procesador con 10 MHz que, junto con el bus de 16 bits, aumentaba en mucho la diferencia de prestaciones entre este y el 8088. Volver

6502: El procesador de 8 bits original de Rockwell International de los primeros Apple II, Atari y Commodore 64. Tena una velocidad mxima de 1 Mhz, usaba 64 Kbytes de memoria. Volver

6585: El procesador de 16 bits de la Western Digital usado por los Apple IIGS. Emulaba la manera de trabajar del 6502. Volver

6800: El primer chip de motorola para Apple de 8 bits. Marc el inicio de una serie de procesadores que compitieron con los de Intel por la supremaca del mercado. Volver

68000: El microprocesador creado por Motorola de la familia de procesadores de 32 bits, utilizado en los ordenadores Macintosh. Fue el primer microprocesador de

la familia que utiliz un tama de palabra de 32 bits con un bus de datos de 16 bits y una capacidad de direccionamiento de 16 Mbytes. Volver

68020: Un microprocesador de 32 bits creado por Motorola capaz de direccionar mas de 4 Gbytes de memoria. Fue utilizado en los ordenadores Macintosh II y posteriormente reemplazado por el 68030. Volver

68030: Un microprocesador creado por Motorola capaz de direccionar ms de 4 Gbytes. Este incluia una circuitera ue gestionaba la memoria paginada sin la necesidad de aadir ningn otro dispositivo para realizar esta funcin. Fue utilizado en los ordenadores Macintosh II. Volver

68040: Un microprocesador de 32 bits creado por Motorola que incorpora un coprocesador matemtico y una unidad de administracin de memoria, junto con una memoria cahe independiente de 4 Kbytes. Este microprocesador incorpora 1,2 millones de transistores y es capaz de realizar 20 millones de instrucciones por minuto. Volver

6845: Chip de control de tarjeta de vdeo programable, original de motorola y usado en los MDA y CGA Volver

68881: Es el coprocesador matemtico de Motorola diseado para ser utilizado junto con los procesadores 68000 o 68020. En aplicaciones matemticas, este coprocesador puede acelerar la velocidad de operacin de entre 10 a 50 veces. Volver

80287: Tambin conocido como 287. Es un procesador matemtico creado por Intel y diseado para trabajar junto al 286. Mediante el uso de este procesaodr se puede aumentar la velocidad entre 10 y 50 veces. Este procesador se puede utilizar con velocidades de reloj de 6, 8 , 10 y 12 Mhz. Volver

80387: Tambin conocido como 387. Es un coprocesador matemtico creado por Intel para trabajar junto al procesador 80386. Puede llegar a acelerar la velocidad entre 10 y 50 veces. Disponible en vlocidades de 16,20, 33 40 Mhz. Volver

80387SX: Tambin denominado 387 SX. Es un procesador matemtico creado por Intel para trabajar con el bus de datos a 16 bits del microprocesador 80386SX. Puede llegar a acelerar la velocidad entre 10 y 50 veces. Disponible slo en la versin de 16 MHz. Volver

88000,88100,88200: Se trata de una familia de microprocesadores RISC de 32 bits creador por Motorola en 1988 y utilizados por estaciones de trabajo. El chip 88000 contiene una CPU 80100 y dos unidades administradoras de memoria cahce, una para el cache de datos y otra para el cache rdenes. La CPU 88100 tambin incluye a su vez un procesador matemtico. Volver

8514/A: Un adaptador de vdeo creado por IBM, capaz de proporcionar una paleta de 256 colores Volver

8087: Se trata de un coprocesador matemtico creado por Intel para trabajar junto al microprocesador 8086 y 8088. Este es capaz de acelerar la velocidad entre 10 y 50 veces. Se pueden utilizar a velocidades de 5, 8 y 10 Mhz. Volver

8080: Un microprocesador de 8 bits, creado por Intel en 1974. Fue el pionero de la familia de microprocesadores 8086 que le sucedieron. El 8080 contiene 6000 transistores y es capaz de realizar 0,64 millones de instrucciones por segundo. Volver

80486DX: Tambin conocidos como 486. Es un microprocesador de 32 bits creado por Intel en 1989. El 486 representa la evolucin de los microprocesadores de la familia de microprocesadores 80386. Este microprocessador incluye notables mejoras como son la presencia del cache, microprocesador matemtico incorporado y una unidad gestora de memoria. Disponible en versiones de 25,33 y 50 Mhz. El 486 es equivalente a 1.25 millones de transistores y es capaz de ejecutar 20 millones de instrucciones por segundo. Volver

80486DX2: Tambin conocido como 486DX2. Es un microprocesador de 32 bits creado por Intel en 1992. Es funcionalmente idntico y 100 % compatible con el 80486 DX, pero la mayor diferencia que incorpora es la llamada, por Intel, tecnologa de doble velocidad que viene a decir queelmicroprocesaodr trabaja l doble de velocidad internamente que con los componentes externos al chip. El 486DX2 es equivalente a 1,2 millones de transistores y es capaz de realizar 40 millones de instrucciones por segundo. Volver

80486SX: Tambin conocido como 486 SX. Es un microprocesador de 32 bits creado por Intel en 1991. El 80486SX se puede definir comoun 486DX que tiene la circuitera del microprocesador matemtico desactivada. Disponible en versiones de 16,20 y 25 MHz. El 486SX est formado por 1.185 millones de transistores y puede ejecutar 16.5 millones de instrucciones por segundo.

Volver

80487: Tambin llamado 487. Es un procesador matemtico creado por Intel para trabajar junto al microprocesador 80486SX. Es capaz de aumentar la velocidad entre 10 y 50 veces. Volver

80586: Originariamente el nombre que debera haber correspondido al procesador siguiente al 80486 de Intel. Un descuido de la compaa hizo que alguien registrase dicho nombre con anterioridad y perdieran su uso. Posteriormente se decidi llamarlo Pentium. Volver

Especificaciones tcnicas de los microprocesadores Intel


Fecha Velocidadd Anchod Nmero Memoriadireccionab Memoriavirtu Breve descripci e reloj e bus detransistore le al depresentaci n n s Primer chip con manipulacin aritmtica Manipulacin Datos/texto 10 veces las (6 micras) prestaciones del 8008

4004

15/11/71

108 KHz.

4 bits

2.300 (10 micras)

640 byte

8008

1/4/72

108 KHz.

8 bits

3.500

16 KBytes

8080

1/4/74

2 MHz.

8 bits

6.000

64 KBytes

5 MHz. 8086 8/6/78 8 MHz. 10 MHz. 8088 1/6/79 5 MHz. 8 MHz. 8 MHz. 80286 1/2/82 10 MHz. 12 MHz. 16 MHz. Microprocesad or Intel 386 DX 20 MHz. 25 MHz. 33 MHz. Microprocesad or Intel 386 SX 16 MHz. 20 MHz. 25 MHz. Microprocesad or Intel 486 DX 10/4/89 33 MHz. 50 MHz. 32 Bits (1 micra, 0.8 micras en 50 MHz.) 4 Gigabytes 64 Terabytes Cach de nivel 1 en el chip 275.000 (1 micra) 64 Terabytes Bus capaz de direccionar 16 bits procesando 32bits a bajo coste 275.000 (1 micra) Primer chip x86 capaz de manejar juegos de datos de 32 bits 16 Bits 134.000 (1.5 micras) 16 Megabytes 1 Gigabyte De 3 a 6 veces las prestaciones del 8086 8 bits 29.000 Idntico al 8086 excepto en su bus externo de 8 bits 16 bits 29.000 (3 micras) 1 MegaByte 10 veces las prestaciones del 8080

17/10/85

32 Bits

4 Gigabytes

64 Terabytes

16/6/88

16 Bits

4 gigabytes

Microprocesad or Intel 486 SX

16 MHz. 22/4/91 20 MHz. (0.8 micras) Terabytes 32 Bits 1.185.000 4 Gigabytes 64

Idntico en diseo al Intel 486DX, pero sin coprocesador matemtico

25 MHz. 33 MHz. 60 MHz. 66 MHz. 75 MHz. 90 MHz. Procesador Pentium 100 MHz. 120 MHz. 133 MHz. 150 MHz. 166 MHz. 200 MHz. 150 MHz. Procesador PentiumPro 200 MHz. 233 MHz. Procesador PentiumII 300 MHz. 7/5/97 266 MHz. 64 Bits 7,5 millones (0.32 micras) 4 Gigabytes 64 Terabytes S.E.C., MMX, Doble Bus Indep., Ejecucin Dinmica 27/3/95 180 MHz. 64 Bits 5,5 millones (0.32 micras) 4 Gigabytes 64 Terabytes Arquitectura de ejecucin dinmica con procesador de altas prestaciones 3,1 millones (0.8 micras) 64 Terabytes Arquitectura escalable. Hasta 5 veces las prestaciones del 486 DX a 33 MHz.

22/3/93

32 Bits

4 Gigabytes

LECCION 2:

---------ASM POR AESOFT. (leccin 2). ---------------------------- DIRECCIONAMIENTO DE MEMORIA EN EL 8086. - SEGMENTACION. ------------------------------------------------------------------Hola a todos los seguidores del curso de ensamblador de AESOFT. En esta leccin vamos a ver cmo direcciona la memoria el 8086, es decir, cmo el 8086 accede a cada una de las posiciones de memoria. La forma en que la CPU construye las direcciones de memoria es muy importante para la programacin del sistema, debido a que constantemente utilizamos instrucciones de transferencias de datos, de acceso a funciones de la BIOS, del DOS, etc. Ms adelante estudiaremos la BIOS. Valga por ahora que es un conjunto de utilidades y procedimientos grabados en la ROM (memoria de slo lectura), los cuales se encargan de acceder al nivel ms bajo en cuanto a programacin se refiere. Es decir, estas rutinas se encargan de manipular el hardware por nosotros. BIOS son las siglas de Basic Input Output System (Sistema bsico de entrada/salida). En cuanto al DOS (sistema operativo de disco), decir que aqu nos referimos no a las utilidades o comandos que trae consigo, que es lo tpico que se ensea en academias e institutos, sino a la estructura interna del mismo: interrupcin 21h, 24h, etc. Ya veremos tambin qu es una interrupcin. Bien, antes de entrar de lleno en el tema, conviene saber un poco del por qu del mismo. Es decir, qu llev a que fuera de esta forma y no de otra. A principio de los aos 80, Intel (fabricante de la familia de procesadores 80x86) se propuso dar un gran paso adelante con respecto a la competencia. En aquel tiempo los microprocesadores que imperaban entre los ordenadores domsticos eran de 8 bits, es decir, tenan un ancho de bus de datos de 8 bits, el tamao de palabra de memoria era de 8 bits, y los registros del procesador eran de 8 bits. Un claro ejemplo de esto fue el microprocesador Z80 (de la empresa Zilog), el cual estaba incorporado en mquinas tan famosas como los spectrum, amstrad, msx, etc. Como he dicho, el ancho del bus de datos era de 8 bits. Esto quiere decir que todas las transferencias de datos que se hicieran se haran de 8 en

8 bits, es decir, byte a byte. Pues bien, aunque el microprocesador era de 8 bits, y la mayora de registros tambin lo fuera, haba alguno mayor (16 bits). Me estoy refiriendo sobre todo al registro de direcciones que era de 16 bits. De esta forma, un amstrad cpc-464 poda acceder a 64 ks de memoria. 64 Ks es la mximo que poda direccionar el z80 original. En ese momento Intel se plante superar esa barrera de las 64 Ks, pero tena un problema. El z80 por ejemplo, haba consguido tener registros de 16 bits cuando el microprocesador es de 8. Pero pasar de 16 bits de capacidad en registros en aquellos momentos no era posible para los microprocesadores. Es decir, no haba suficientes avances tecnolgicos como para conseguir tamaos de registros mayores en un microprocesador. De tal manera que haba que buscar una frmula diferente... Y ah es cuando surgi el tema de los segmentos que tantos quebraderos de cabeza a dado hasta ahora y sigue dando. A Intel se le ocurri la idea de construir una direccin de 20 bits de ancho y colocarla en el bus de direcciones para poder dirigirse a la memoria. Pero al ser los registros de 16 bits, slo haba una solucin posible para crear este ancho de 20 bits: Usar 2 registros de 16 bits!!! El 8086 divide el espacio de direcciones (1 Mbyte) en segmentos, cada uno de los cuales contiene 64 Ks de memoria (la mxima direccionable por un slo registro). Entonces, para direccionar una posicin de memoria nos valemos de dos registros: Registro de segmento y de offset. Ya vimos en la leccin anterior que haba varios registros de segmento: cs (registro de segmento de cdigo), ds (de datos), etc. Pues bien, este primer registro (de segmento), indica dnde comienza el trozo de 64 Ks que buscamos. Y el segundo registro (el de offset), contiene el desplazamiento dentro de ese segmento. Bien. Hemos visto que son necesarios 2 registros para direccionar ese Mbyte de memoria, y tenemos un bus de direcciones de 20 bits. Esto nos conduce a que el microprocesador debe realizar unas operaciones sobre estos dos registros para obtener la direccin fsica de 20 bits. Esto se logra de la siguiente manera: El 8086 mueve el valor del segmento 4 bits a la izquierda y le suma el valor del desplazamiento para crear una direccin de 20 bits. Grficamente: Tenemos dos registros de 16 bits. DS: XXXXXXXXXXXXXXXX BX: XXXXXXXXXXXXXXXX 15 87 0 15 87 0

+------++------+ Byte alto Byte bajo (ms significativo)(menossignific)

+------++------+ Byte alto Byte bajo

El primer registro, es el de segmento (en este caso, segmento DS, de datos). El segundo registro es el de offset o desplazamiento. En este caso utilizamos el registro BX para direccionar dentro de el segmento. Podamos haber utilizado tambin el registro SI, el DI, etc. A partir de estos dos registros, debemos acceder a una posicin de memoria fsica dentro del Mbyte de que disponemos para el 8086. Pongamos que el registro DS tiene el valor 0B800h (en hexadecimal) (podeis utilizar SB-CALCU de SAN BIT para hacer los cambios de base, y trabajar con bases diferentes a la decimal. Tambin para la decimal, por supuesto). Y el registro BX contiene el valor 0037h. Tenemos pues (en binario): DS: 1011100000000000

BX: 0000000000110111

Para obtener la direccin fsica de memoria, y teniendo en cuenta todo lo dicho relativo a segmentos, el microprocesador acturara as: (Grficamente) Hara una suma de la siguiente forma: DS: BX: 1011100000000000 0000000000110111 ---------------------------10111000000000110111

Obteniendo as la direccin de 20 bits necesaria para cubrir todo el Mbyte. Si ese nmero (10111000000000110111) que est en binario, lo pasamos a hexadecimal, tenemos que la direccin fsica correspondiente a la anterior segmentada es: 0B8037h. De todo lo anterior, se desprende que los segmentos empiezan siempre en direcciones divisibles por 16. Ms tcnicamente: cada segmento comienza en una direccin de prrafo. Un prrafo son 16 bytes. Por supuesto nunca habr un segmento que empiece en una direccin impar, por ejemplo. Como ejemplo: El primer segmento posible empieza en la direccin fsica 0. El segundo empieza en la direccin Esto es ms complejo de lo que parece. Si tienes alguna duda, ya sabes...

Si le das vueltas a la idea, te dars cuenta que diferentes combinaciones de direcciones segmentadas dan una misma direccin fsica. Tambin se puede apreciar que los segmentos se pueden superponer unos a otros, pueden ser idnticos, o pueden encontrarse en partes totalmente lejanas en la memoria. Si llegados a este punto no comprendes el tema de los segmentos, no sigas, ya que te perderas. Dime qu no entiendes y lo explicar ms detalladamente. Es todo por ahora. Ah, y no s si recibsteis la primera leccin. Parece que todo estaba claro. Si en ste no os surge ninguna duda, ya me mosqueo }:-))) Saludos. AESOFT..

You might also like