Sie sind auf Seite 1von 10

Arias Zacaras Zachariel

Lenguaje de interfaz

Evolucion historica de la familia de procesadores X86 y conceptos

31/Enero/2014

Contenido
Introduccin ...............................................................................................................................................................3 Evolucin histrica de la familia de procesadores x86...............................................................................................4 Intel 8086. .............................................................................................................................................................4 Intel 8088. .............................................................................................................................................................5 Intel 80286. ...........................................................................................................................................................5 Intel 80386. ...........................................................................................................................................................5 Intel Pentium.........................................................................................................................................................6 Intel Pentium II. ....................................................................................................................................................7 Intel Pentium IV. ...................................................................................................................................................7 Intel Pentium i7. ...................................................................................................................................................8 Conceptos ...................................................................................................................................................................8 Byte ........................................................................................................................................................................8 Palabra ..................................................................................................................................................................8 Registros ...............................................................................................................................................................8 Lenguaje maquina ...............................................................................................................................................8 Lenguaje ensamblador .......................................................................................................................................8 Conclusin ..................................................................................................................................................................9 Bibliografa............................................................................................................................................................... 10

Introduccin
Por medio de este documento se pretende recopilar informacin acerca de la familia de procesadores x86, esto para demostrar cmo han evolucionado y avanzando en potencia cada vez con el pasar del tiempo. Se buscar principalmente informacin sobre algunas caractersticas como la arquitectura, bus de datos y numero de instrucciones de cada procesador. Por ltimo tambin se darn a conocer algunos conceptos de vital importancia para comprender ms fcil la materia de lenguajes de interfaz.

Evolucin histrica de la familia de procesadores x86.


Intel 8086.

Arquitectura: Procesador de 16 bits. Bus de datos: Bus de datos interno de 16 bits y bus de datos externo de 16bits. No. De instrucciones: 89 instrucciones. Instrucciones:
pone carry en 0 AX := AX + 1 AX := AX + BX carga el acumulador desde un dispositivo de I/O carga los flags en AH carga una direccin efectiva carga DS y un registro de 16 bits con datos de memoria de 32 bits carga ES y un registro de 16 bits con datos de memoria de 32 bits carga byte o palabra o doble palabra saca datos del acumulador a un puerto de I/O recupera una palabra de la pila recupera los flags de la pila almacena una plabra en la pila almacena los flags en la pila carga AH en los flags intercambia bytes o palabras emplea AL para entrar a una tabla de conversin ajuste ASCII para suma, divisin, producto y resta suma datos entre registros o la memoria y otro registro suma con acarreo convierte byte a palabra compara los datos convierte palabra a doble palabra ajuste decimal en AL para una suma/resta en BCD decrementa operando en 1 divisin sin signo divisin con signo multiplicacin con signo incrementa operando en 1 multiplicacin sin signo cambia el signo resta con acarreo resta datos entre los registros y la memoria u otro reg. Y lgica invertir (complemento a 1) O lgica desplazamiento aritmtico a derecha desplazamiento a izquierda desplazamiento lgico a derecha rotacin a la izquierda con acarreo rotacin a izquierda rotacin a derecha con acarreo rotacin a derecha operacin con el AND lgico pero slo afecta banderas O exclusivo comparacin entre 2 cadenas en memoria cargar el acumulador con un dato de una cadena mover cadena de memoria a memoria comparacin entre los datos de una cadena y el acumulador almacenar el acumulador llamada a subrutina interrupcin de software 3 interrupcin 3 interrupcin si hay overflow 4

CLC INC AX ADD AX, BX IN LAHF LEA LDS LES MOV OUT POP POPF PUSH PUSHF SAHF XCHG XLAT AAA, AAD, AAM, AAS ADD ADC CBW CMP CWD DAA, DAS DEC DIV IDIV IMUL INC MUL NEG SBB SUB AND NOT OR SAR SHL/SAL SHR RCL ROR RCR ROR TEST XOR CMPS LODS MOVS SCAS STOS CALL INT INT INTO

IRET JA, JAE, JB, JBE JE/JZ JG, JGE, JL, JLE JMP JNE/JNZ JNC, JNO, JNP, JNS JC, JO, JP, JS LOOP LOOPE, LOOPNE JCXZ RET CLC CLD CLI CMC HLT NOP STC STD STI WAIT LOCK

retorno de una rutina de interrupcin saltar si mayor, mayor o igual, menor, menor o igual saltar si es cero o igual saltar si mayor, mayor o igual, menor, menor o igual salto incondicional saltar si no es igual o no es cero saltar si no acarreo, overflow, paridad, signo saltar si acarreo, overflow, paridad, signo repite un ciclo CX veces igual a la anterior pero termina prematuramente por Z=1, 0 saltar si CX es 0 retorno de subrutina borrar acarreo habilitar incremento automtico deshabilitar terminal INTR complementar acarreo alto hasta que se reinicialice o exista interrupcin no operacin activa acarreo habilitar decremento automtico habilitar interrupciones espera a que el terminal TEST=0 controla el terminal LOCK

Intel 8088.

Arquitectura: Procesador de 16 bits. Bus de datos: Bus de datos interno de 16 bits y bus de datos externo de 8 bits. No. De instrucciones: 89 instrucciones.

Intel 80286.

Arquitectura: Procesador de 16 bits. Bus de datos: Bus de datos de 16 bits. No. De instrucciones: 89 instrucciones.

Intel 80386.

Arquitectura: Procesador de 32 bits. Bus de datos: Bus de datos de 32 bits. No. De instrucciones: 138 instrucciones (49 ms que sus predecesores). Instrucciones nuevas:
LFS LGS LSS POPA POPAD POPD POPFD PUSHA PUSHAD PUSHD carga FS y registro de 16 bits con los datos de memoria de 32 bits carga GS y registro de 16 bits con los datos de memoria de 32 bits carga SS y registro de 16 bits con los datos de memoria de 32 bits recupera todos los registros de la pila recupera todos los registros de doble pila recupera 1palabra doble de la pila. recupera los indicadores ampliados de la pila salva todos los registros en la pila. salva todos los registros de dobles palabras en la pila salva doble palabra en la pila. 5

PUSHFD CDQ MOVSX MOVZX BSF BSR BT BTC BTR BTS SHLD SHRD INS OUTS BOUND ENTER IRETD LEAVE LOOPD LOOPED LOOPNED JECZX ARPL CTS ESC LAR LGDT LIDT LLDT LSL LTR SGDT SIDT SLDT STR VERR VERW

salva banderas ampliadas en la pila convierte doble palabra a cudruple palabra cargar, ampliar y poner signo a los datos cargar y ampliar datos con ceros rastrear bits hacia el frente rastrear bits hacia atrs instruccin para prueba de bit probar bit y complementarlo probar bit y resetearlo probar bit y resetearlo corrimiento a la izquierda en precisin doble corrimiento a la derecha en precisin doble meter datos de I/O a la memoria sacar datos de la memoria al espacio de I/O comprobacin de limite entrar al procedimiento retomar de una interrupcin abandonar el procedimiento repite el ciclo ECX veces repite el ciclo mientras sea igual (ECX = contador) repite el ciclo mientras no sea igual (ECX = contador) salto si ECX es cero ajusta el grado solicitado de privilegio borra bandera de conmutacin de tarea instruccin para el coprocesador carga derechos de acceso carga de tabla de descriptores globales carga de tabla descriptores de interrupcin carga de tabla de descriptores locales carga lmite de segmento carga registro de tarea almacena tabla de registros de descriptores globales almacena tabla de registros de descriptores de interrupcin almacena tabla de registros de descriptores locales almacena registro de tarea vericar acceso para lectura vericar acceso para escritura

Intel Pentium.

Arquitectura: Procesador de 32 bits. Bus de datos: Bus de datos de 64 bits. No. De instrucciones: Instrucciones 180, (42 ms que sus predecesores). Instrucciones nuevas:
Put the sum of registers rs and rt into register rd Addition immediate (with overflow) Put the sum of register rs and the sign-extended immediate into register rt If the addition results in 32-bit 2s complement arithmetic overflow then the destination register is not modified and an Integer Overflow exception occurs Put the logical AND of registers rs and rt into register rd Put the logical AND of register rs and the zero-extended immediate into register rt Divide register rs by register rt. Leave the quotient in register lo and the remainder in register hi Multiply registers rs and rt. Leave the low-order word of the product in register lo and the high-order word in register hi Put the logical NOR of registers rs and rt into register rd Put the logical OR of registers rs and rt into register rd Put the logical OR of register rs and the zero-extended immediate into register rt Shift left logical

add rd, rs, rt addi rt, rs, imm

and rd, rs, rt andi rt, rs, imm div rs, rt mult rs, rt nor rd, rs, rt or rd, rs, rt ori rt, rs, imm sll rd, rt, shamt

sllv rd, rt, rs Shift left logical variable sra rd, rt, shamt Shift right arithmetic srav rd, rt, rs Shift right arithmetic variable srl rd, rt, shamt Shift right logical srlv rd, rt, rs Shift right logical variable, Shift register rt left (right) by the distance indicated by immediate shamt or the register rs and put the result in register rd sub rd, rs, rt Subtract (with overflow), Put the difference of registers rs and rt into register rd. If the subtraction results in 32-bit 2s complement arithmetic overflow then the destination register is not modified and an Integer Overflow exception occurs xor rd, rs, rt Put the logical XOR of registers rs and rt into register rd. xori rt, rs, imm Put the logical XOR of register rs and the zero-extended immediate into register rt lui rt, imm Load upper immediate, Load the lower halfword of the immediate imm into the upper halfword of register rt. The lower bits of the register are set to 0 slt rd, rs, rt Set register rd to 1 if register rs is less than rt, and to 0 otherwise slti rt, rs, imm Set register rt to 1 if register rs is less than the sign-extended immediate, and to 0 otherwise beq rs, rt, label Conditionally branch to instruction specified by label if register rs equals rt bgez rs, label Conditionally branch to instruction specified by label if register rs is greater than or equal to 0 bgtz rs, label Conditionally branch to instruction specified by label if register rs is greater than 0 blez rs, label Conditionally branch to instruction specified by label if register rs is less than or equal to 0 bltz rs, label Conditionally branch to instruction specified by label if register rs is less than 0 bne rs, rt, label Conditionally branch to instruction specified by label if register rs is not equal to rt j target Unconditionally jump to the instruction at target jal target Unconditionally jump to the instruction at target; save the address of the next instruction in register $ra jr rs Unconditionally jump to the instruction whose address is in register rs lb rt, address Load byte lbu rt, address Load unsigned byte lh rt, address Load halfword lhu rt, address Load unsigned halfword lw rt, address Load the 32-bit quantity (word) at address into register rt sb rt, address Store the low byte from register rt at address sh rt, address Store the low halfword from register rt at address sw rt, address Store the word from register rt at address mfhi rd Move from hi mflo rd Move the hi (lo) register to register rd mthi rs Move to hi mtlo rs Move register rs to the hi (lo) register

Intel Pentium II.

Arquitectura: Procesador de 64 bits. Bus de datos: Bus de datos de 64 bits. No. De instrucciones: 237 instrucciones (57 nuevas instrucciones MMX)

Intel Pentium IV.

Arquitectura: Procesador de 64 bits. Bus de datos: Bus de datos de 64 bits. No. De instrucciones: 324 instrucciones (144 nuevas instrucciones SSE ampliacin de las MMX)

Intel Pentium i7.

Arquitectura: Procesador de 64 bits Bus de datos: De cudruple canal de memoria DDR3 (256 bits) No. De instrucciones: 54 nuevas instrucciones SS4.2

Conceptos
Byte
Es una unidad de informacin que consta de 8 bits. Cuando es procesado o almacenado, este equivale a un nico carcter, como puede ser una letra, un nmero o un signo de puntuacin.

Palabra
Es una cadena de bits usados para almacenar datos en una computadora. Una palabra est compuesta por 2 bytes, una doble palabra por 4 bytes y una cudruple palabra por 8 bytes. Estas palabras son usadas por los ordenadores para intercambiar continuamente datos internamente entre la CPU y el sistema de memoria.

Registros
Es una memoria de alta velocidad y poca capacidad, integrada en el microprocesador, que permite guardar datos transitoriamente y acceder a valores muy usados, generalmente en operaciones matemticas. Los registros estn en la cumbre de la jerarqua de memorias o nivel 0, y son la manera ms rpida que tiene el sistema de almacenar datos. Los registros se miden por el nmero de bits que pueden almacenar, como 8, 16 y 32 bits. Los registros generalmente se implementan en un banco de registros, donde son divididos en dos grupos, de propsito general y de propsito especifico

Lenguaje maquina
Es un lenguaje que consta de un alfabeto binario en el que se usan nicamente dos smbolos denominados bits (0 y 1). Estas cadenas binarias especifican una operacin y las posiciones (direccin) de memoria implicadas en una operacin que ejecuta un ordenador. Las instrucciones en lenguaje mquina dependen de la arquitectura de la computadora y, por tanto, diferirn de una computadora a otra.

Lenguaje ensamblador
Es un lenguaje de programacin de bajo nivel que consiste en instrucciones escritas con nemnicos cortos, tales como ADD, MOV, SUB y CALL. Este lenguaje proporciona un acceso directo al hardware de la computadora, por lo que se debe tener una buena comprensin acerca de la arquitectura y el sistema operativo en el que se vaya a manejar.

Conclusin
Los microprocesadores Intel, uno de los lideres en microprocesadores en el mercado, ha logrado un gran avance desde su primeros procesadores usados para calculadoras hasta los ms complejos y avanzados procesadores actuales usados para computadores personales. Estos microprocesadores aun conservan ciertas caractersticas semejantes a las de sus predecesores, sin embargo han logrado aumentar sus capacidades de procesamiento en gran medida comparado con los mas antiguos.

Bibliografa.
http://www.google.com.mx/url?sa=t&rct=j&q=&esrc=s&source=web&cd=57&ved=0CEsQFjAG ODI&url=http%3A%2F%2Fwww.frrg.utn.edu.ar%2Ffrrg%2Fapuntes%2Fprogramacion%2Fsist _proc_datos%2Funidades_medidas.pdf&ei=vs_pUvDjOqSayQGar4CYBg&usg=AFQjCNHZ0k nTe294RNdyC_lLb5QGn6Te5Q&bvm=bv.60444564,d.b2I&cad=rja http://es.wikipedia.org/wiki/Registro_%28hardware%29 http://www.sites.upiicsa.ipn.mx/polilibros/portal/Polilibros/P_terminados/PolilibroFC/Unidad_III/ Unidad%20III_5.htm http://www.intel.com/support/sp/processors/sb/cs-030123.htm Lenguaje ensamblador para computadoras basadas en Intel, quinta edicin, KIP R. IRVINE, edit. Prentice hall.

10

Das könnte Ihnen auch gefallen