11
Agenda: 8/25/22 80386 Salient Features of 80386 Functional Block Diagram of 80836 Pin Description of 8086 Register Set of 80386 Flags 1

Additional good diagrams

  • Upload
    aviban

  • View
    52

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Additional good diagrams

Friday, April 14, 2023 80386 1

Agenda: Salient Features of 80386

Functional Block Diagram of 80836

Pin Description of 8086

Register Set of 80386

Flags

Page 2: Additional good diagrams

Friday, April 14, 2023 80386 2

Page 3: Additional good diagrams
Page 4: Additional good diagrams

Branch Instruction

Page 5: Additional good diagrams

Indirect Addressing Diagram

Address AOpcode

Instruction

Memory

Operand

Pointer to operand

Page 6: Additional good diagrams

Register Addressing DiagramRegister Address ROpcode

Instruction

Registers

Operand

Page 7: Additional good diagrams

Register Indirect Addressing Diagram

Register Address ROpcode

Instruction

Memory

OperandPointer to Operand

Registers

Page 8: Additional good diagrams

Friday, April 14, 2023 80386 8

°MIPS: “Three-address architecture”•Arithmetic-logic specify all 3 operands

add $s0,$s1,$s2 # s0=s1+s2•Benefit: fewer instructions performance

°x86: “Two-address architecture”•Only 2 operands, so the destination is also one of the sources

add $s1,$s0 # s0=s0+s1•Often true in C statements: c += b;•Benefit: smaller instructions smaller code

Page 9: Additional good diagrams

Direct Addressing DiagramAddress AOpcode

Instruction

Memory

Operand

Page 10: Additional good diagrams

Displacement Addressing Diagram

Register ROpcode

Instruction

Memory

OperandDisplacement

Registers

Address A

+

Page 11: Additional good diagrams

Friday, April 14, 2023 80386 11

• In 80386 & above, extended 32-bit register names are: EAX, EBX, ECX, EDX, ESP, EBP, EDI, and ESI.

• 64-bit mode register names are: RAX, RBX, RCX, RDX, RSP, RBP, RDI, RSI, and R8 through R15.

• Important for instructions to use registers that are the same size. – never mix an 8-bit \with a 16-bit register, an 8- or

a 16-bit register with a 32-bit register– this is not allowed by the microprocessor and

results in an error when assembled