TEMA 2' ARQUITECTURA IA32 - PowerPoint PPT Presentation

1 / 60
About This Presentation
Title:

TEMA 2' ARQUITECTURA IA32

Description:

TEMA 2. ARQUITECTURA IA-32. Lecci n 1. Arquitectura de los ... Evoluci n hist rica de los microprocesadores Intel 80x86. 12/21/09. MICROPROCESADORES ... – PowerPoint PPT presentation

Number of Views:294
Avg rating:3.0/5.0
Slides: 61
Provided by: Nan6151
Category:

less

Transcript and Presenter's Notes

Title: TEMA 2' ARQUITECTURA IA32


1
TEMA 2. ARQUITECTURA IA-32
  • Lección 1.
  • Arquitectura de los microprocesadores IA-32
  • Intel Architecture Software Developers Manual
    Vol 1 caps 2.

2
Evolución histórica de los microprocesadores
Intel 80x86
3

4

5

6

7

8

9

10

11

12
Pentium IV Modos de operación
  • Protegido
  • Real
  • SSM ( System Management Mode)

13
Pentium IV Entorno básico
  • Memoria
  • Registros propósito general
  • Registros de segmento
  • Registros FPU
  • Registros MMX
  • Registros XMM
  • Registro EFLAGS

14
EFLAGS
15
Pentium IV Otros registros
  • Registros de control
  • Registros de gestión de memoria
  • Registros de depuración
  • Registro CPUID
  • Otros registros

16
Pentium IV Direcciones de los operandos
  • La propia instrucción Inmediato
  • Registro
  • Puerto I/O
  • Memoria
  • Segmento
  • Offset Base Índice factor de escala
    Desplazamiento

17
Pentium IV Formato de instrucciones
18
Pentium IV Formato de instrucciones
19
Pentium IV Formato de instrucciones
20
Instrucciones de movimiento de datos
  • MOV destino, fuente
  • CMOVcc destino,fuente

21
Instrucciones de movimiento condicional
22
Instrucciones de intercambio
  • XCHG destino, fuente
  • BSWAP
  • XADD
  • CMPXCHG /CMPXCHG8B

23
Instrucciones de uso de la pila
  • PUSH fuente
  • POP destino
  • PUSHA /POPA

24
Instrucciones de conversión de tipo
  • CBW
  • CWD /CWDE
  • CDQ
  • MOVSX /MOVZX destino

25
Instrucciones aritméticas (1)
  • ADD/ADC destino, fuente
  • SUB/SBB destino, fuente
  • MUL/IMUL fuente
  • DIV/IDIV fuente

26
Instrucciones aritméticas (2)
  • INC/DEC operando
  • CMP destino, fuente
  • NEG operando

27
Instrucciones de ajuste decimal
  • DAA/DAS
  • AAA/AAS/AAM/AAD

28
Instrucciones lógicas
  • AND destino, fuente
  • OR destino, fuente
  • XOR destino, fuente
  • NOT operando

29
Instrucciones de desplazamiento y rotación
  • SAL/SAR/SHL/SHR destino, nº bits
  • SHLD/SHRD destino,fuente
  • ROL/ROR/RCL/RCR destino, nº bits

30
Instrucciones de bit y byte
  • BT/BTS/BTR/BTC operando, nº bit
  • BSF/BSR destino,origen
  • SETcc destino
  • TEST destino, fuente

31
Instrucciones de transferencia incondicional
  • JUMP (short near far) etiqueta
  • CALL/RET etiqueta
  • INT/IRET

32
Instrucciones de salto condicional
33
Instrucciones de bucles
  • LOOP etiqueta
  • LOOPE/LOOPZ/LOOPNE/LOOPNZ etiq
  • JECXZ etiqueta

34
Instrucciones sobre cadenas de caracteres
  • MOVS/MOVSB/MOVSW/MOVSD
  • CMPS/CMPSB/CMPSW/CMPSD
  • LODS/LODSB/LODSW/LODSD
  • SCAS/SCASB/SCASW/SCASD
  • STOS/STOSB/STOSW/STOSD

35
Prefijos de repetición
  • REP
  • REPE/REPZ
  • REPNE/REPNZ

36
Instrucciones de entrada y salida
  • IN registro, nº puerto
  • OUT nº puerto, registro
  • INS/OUTS

37
Instrucciones de EFLAGS
  • STC/CLC/CMC
  • STD/CLD
  • STI/CLI
  • LAHF/SAHF
  • PUSHF/POPF

38
Instrucciones de miscelánea
  • LEA destino, fuente
  • XLAT/XLATB
  • CPUID
  • NOP

39
El entorno de ejecución FPU-32
  • Pila de registros
  • Registro de estado
  • Registro de control
  • Registro de tag
  • Registro puntero al ultimo operando
  • Registro puntero a la última instrucción
  • Registro de código de operación

40
Pila de registros x87 FPU
41
Registro de control x87 FPU
42
Registro de estado x87 FPU
43
Registro de tag x87 FPU
44
Tipos de datos FPU
  • Enteros de 16,32,64 bits en complemento a dos
  • Reales de 32,64,80 bits
  • Signo
  • Exponente 8, 11, 15 bits
  • Mantisa de 23, 52, 64 bits
  • BCD de 80 bits

45
Instrucciones de transferencia de datos (1)
  • FLD origen_real
  • FST destino_real
  • FXCH registro x87
  • FCMOVcc registro x87

46
Instrucciones de transferencia de datos (2)
  • FILD entero
  • FIST entero
  • FISTP entero
  • FBLD decimal
  • FBSTP decimal

47
Instrucciones de carga de constantes
  • FLDZ 0.0
  • FLD1 1.0
  • FLDPI p (pi)
  • FLDL2T log2 10
  • FLDL2E log2 e
  • FLDLG2 log10 2
  • FLDLN2 loge 2

48
Instrucciones aritméticas x87 (1)
  • FADD/FADDP/FIADD
  • FSUB/FSUBP/FISUB
  • FSUBR/FSUBRP/FISUBR

49
Instrucciones aritméticas x87 (2)
  • FMUL/FMULP/FIMUL
  • FDIV/FDIVP/FIDIV
  • FDIVR/FDIVRP/FIDIVR

50
Instrucciones aritméticas x87 (3)
  • FABS
  • FCHS
  • FSQRT
  • FPREM/FPREM1
  • FRNDINT
  • FXTRACT

51
Instrucciones de comparación x87FCOM/FCOMP/FCOMPP
52
Instrucciones de comparación x87FCOMI/FCOMIP
53
Otras instrucciones de comparación x87
  • FUCOM/FUCOMP
  • FICOM/FICOMP
  • FUCOMI/FUCOMIP

54
Instrucciones de clasificación FXAM
55
Otra instrucción de comparación FTST
56
Instrucciones trigonométricas
  • FSIN
  • FCOS
  • FSINCOS
  • FPTAN
  • FPATAN

57
Instrucciones logarítmicas, exponenciales y de
escalado
  • FYL2X st0 st1log2(st0)
  • FYL2XP1 st0 st1log2 (st01.0)
  • F2XM1 st0 2st0 -1
  • FSCALE st0 st0 2st1

58
Instrucciones de control x87
  • FINIT/FNINIT inicialización
  • FLDCW/FSTCW/FNSTSW reg control
  • FSTSW/FNSTSW reg. Estado
  • FCLEX/FNCLEX bits excepción

59
Instrucciones carga y almacenamiento del entorno
  • FLDENV
  • FSTENV/FNSTENV
  • FSAVE/FNSAVE/FRSTOR

60
Otras instrucciones x87
  • FWAIT/FNWAIT
  • FNOP
  • FFREE
  • FINCSTP/FDECSTP
Write a Comment
User Comments (0)
About PowerShow.com