Chapter 2 (cont.) An Introduction to the 80x86 Microprocessor Family Objectives: The different addressing modes and instruction types available The usefulness.

Slides:



Advertisements
Similar presentations
Register In computer architecture, a processor register is a small amount of storage available on the CPU whose contents can be accessed more quickly than.
Advertisements

8086 [2] Ahad. Internal! External? 8086 vs _bit Data Bus 20_bit Address 8_bit Data Bus 20_bit Address Only external bus of 8088 is.
COMP 2003: Assembly Language and Digital Logic
MICROPROCESSORS TWO TYPES OF MODELS ARE USED :  PROGRAMMER’S MODEL :- THIS MODEL SHOWS FEATURES, SUCH AS INTERNAL REGISTERS, ADDRESS,DATA & CONTROL BUSES.
8086.  The 8086 is Intel’s first 16-bit microprocessor  The 8086 can run at different clock speeds  Standard 8086 – 5 MHz  –10 MHz 
Intel MP.
Lect 3: Instruction Set and Addressing Modes. 386 Instruction Set (3.4) –Basic Instruction Set : 8086/8088 instruction set –Extended Instruction Set :
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 2 The Microprocessor and its Architecture.
1 ICS 51 Introductory Computer Organization Fall 2006 updated: Oct. 2, 2006.
3-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL Intel 8088 (8086) Microprocessor.
ICS312 Set 3 Pentium Registers. Intel 8086 Family of Microprocessors All of the Intel chips from the 8086 to the latest pentium, have similar architectures.
Microprocessor Systems Design I Instructor: Dr. Michael Geiger Spring 2012 Lecture 2: 80386DX Internal Architecture & Data Organization.
Microprocessor Systems Design I Instructor: Dr. Michael Geiger Spring 2013 Lecture 4: 80386DX memory, addressing.
Microprocessor Systems Design I Instructor: Dr. Michael Geiger Spring 2014 Lecture 4: x86 memory.
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 2 The Microprocessor and its Architecture.
Gursharan Singh Tatla Block Diagram of Intel 8086 Gursharan Singh Tatla 19-Apr-17.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
The 8086 Microprocessor The 8086, announced in 1978, was the first 16-bit microprocessor introduced by Intel Corporation 8086 is 16-bit MPU. Externally.
Lect 4: Instruction Set and Addressing Modes. 386 Instruction Set (3.4)  Basic Instruction Set : 8086/8088 instruction set  Extended Instruction Set.
به نام یکتای هستی بخش درس ریزپردازنده یک گروه دکتر ثنایی جلسه اول.
MICROPROCESSORS AND APPLICATIONS
Types of Registers (8086 Microprocessor Based)
INSTRUCTION SET AND ASSEMBLY LANGUAGE PROGRAMMING
Microprocessor Microprocessor (cont..) It is a 16 bit μp has a 20 bit address bus can access upto 220 memory locations ( 1 MB). It can support.
(-133)*33+44* *33+44*14 Input device memory calculator Output device controller Control bus data bus memory.
Block diagram of 8086.
Intel 8086 (8088) Microprocessor Structure
3.4 Addressing modes Specify the operand to be used. To generate an address, a segment register is used also. Immediate addressing: the operand is a number.
INTRODUCTION TO INTEL X-86 FAMILY
Assembly Language Data Movement Instructions. MOV Instruction Move source operand to destination mov destination, source The source and destination are.
Intel 8086 MICROPROCESSOR ARCHITECTURE
BITS Pilani Pilani Campus Pawan Sharma Lecture / ES C263 INSTR/CS/EEE F241 Microprocessor Programming and Interfacing.
Microprocessors CSE- 341 Dr. Jia Uddin Assistant Professor, CSE, BRAC University Dr. Jia Uddin, CSE, BRAC University.
Intel MP Organization. Registers - storage locations found inside the processor for temporary storage of data 1- Data Registers (16-bit) AX, BX, CX, DX.
The Microprocessor & Its Architecture A Course in Microprocessor Electrical Engineering Department Universitas 17 Agustus 1945 Jakarta.
8086 Microprocessor J Srinivasa Rao.
I NTEL 8086 M icroprocessor بسم الله الرحمن الرحيم 1.
Microprocessors CSE- 341 Dr. Jia Uddin Assistant Professor, CSE, BRAC University Dr. Jia Uddin, CSE, BRAC University.
Computer Science 516 Intel x86 Overview. Intel x86 Family Eight-bit 8080, 8085 – 1970s 16-bit 8086 – was internally 16 bits, externally 8 bits.
ΜComputer Structure μProcessor Memory Bus System I/O Ports.
80486 Microprocessor The 32-bit is the next evolutionary step up from the One of the most obvious feature included in a is a built.
Microprocessor Systems Design I
Introduction to 8086 Microprocessor
Introduction to the processor and its pin configuration
Interrupts In 8085 and 8086.
COURSE OUTCOMES OF Microprocessor and programming
8086 MICROPROCESSOR ARCHITECTURE & SEGMENTATION
EE3541 Introduction to Microprocessors
ADDRESSING MODES.
Chapter 4 Data Movement Instructions
Basic Microprocessor Architecture
Assembly IA-32.
ADDRESSING MODES.
Microprocessor The microprocessors functions as the CPU in the stored program model of the digital computer. Its job is to generate all system timing signals.
Intel 8088 (8086) Microprocessor Structure
Homework Reading Continue work on mp1
8086 Features It is a 16 bit μp. It is manufactured with H-MOS technology has a 20 bit address bus can access up to 220 memory locations ( 1 MB)
Symbolic Instruction and Addressing
Intel 8088 (8086) Microprocessor Structure
8086 Registers Module M14.2 Sections 9.2, 10.1.
Morgan Kaufmann Publishers Computer Organization and Assembly Language
32-bit instruction mode(80386-Pentium 4 only)
Symbolic Instruction and Addressing
CS 301 Fall 2002 Computer Organization
The Microprocessor & Its Architecture
Symbolic Instruction and Addressing
CNET 315 Microprocessor & Assembly Language
Computer Architecture CST 250
Unit-I 80386DX Architecture
Chapter 6 –Symbolic Instruction and Addressing
Presentation transcript:

Chapter 2 (cont.) An Introduction to the 80x86 Microprocessor Family Objectives: The different addressing modes and instruction types available The usefulness of interrupts Some of the differences between the 8086 and the 80286, 80386, and Pentium microprocessors EE314 Microprocessor Systems Based on "An Introduction to the Intel Family of Microprocessors" by James L. Antonakos

2.7 Addressing modes F0000 E0000 D0000 C0000 B0000 A FFFFF Real-Mode Addressing space The addressing space of the processor in the real mode: 20 address bits used 1Mbyte wide address to FFFFF Logically Byte organized A particular way to split memory in segments: non-overlapping A segment is a 64KB memory block, beginning at a multiple-of-16 (10H) address Overlapping segments Superposed segments The segment 38130H-4812FH The content of the used segment register is 3813H. Interrupt pointer table 003FF Reset instruction area FFFFF FFFF0

MOV CL,[ BP - 4] 2.7 Addressing modes Specify the operand to be used. To generate an address, a segment register is used also. Immediate addressing: the operand is a number included in the instruction body. MOV CX,1024 Register addressing: the operand is a register. ADD AL, BL Direct addressing: the operand address is a number in [] or the value of a symbol (no [].) MOV AX,[3000] MOV BL,COUNTER Register indirect addressing: the register enclosed in [ ] specifies the operand address. MOV BX,[SI] Indexed addressing: the operand address is the sum of the value of the index register and a number, both enclosed in [ ]. MOV BX,[ SI + 10] Based addressing: is similar to indexed, but using BP (base pointer) register. Based-indexed addressing: the operand address is the sum of the values of BP and one of the index registers (SI or DI). MOV DS:[ BP + DI],AX Based-indexed with displacement addressing: ads to the former an offset value. MOV DL,[ BP][ DI + 2] or MOV DL,[ BP + DI + 2] Port addressing: used by input/output instructions. The address of the source port for IN or destination port for OUT is a number or a register content. OUT 80H, AL IN AL, DX The displacement is a signed 2’s complement byte or word Segment overriding

2.7 Addressing modes 32-Bit Addressing Mode Base register EAX EBX ECX EDX EBP ESI EDI ESP + Segment register CS DS ES FS GS SS Scale factor Displacement none 8-bit 32-bit + Index register EAX EBX ECX EDX EBP ESI EDI * + Effective address Ex: MOV EAX,[EBX][ECX*4+6] 0010 B4 09MOVAH, D RLEADX, TABLE 0016 CD 21INT21H 0018 B4 09MOVAH, 9 001A 66 8D 1E 0000 RLEAEBX, TABLE 001F 66 BA MOVEDX, D 14 93LEADX, [EBX][EDX*4] 0029 CD 21INT21H Prefixes to allow using 32-bit registers in real mode

2.8 Interrupts Hardware and Software Interrupts The nonmaskable interrupt is generated by en external device, via the NMI pin. Cannot be ignored by the microprocessor. The maskable interrupts (0…FFH) can be generated by: an external device, via the INTR pin (the external device has to specify the interrupt number). (IF (interrupt flag) in FLAGS register enables or disables the  P to accept maskable interrupts.) microprocessor itself (i.e. when trying to divide by 0), (the interrupt number is hardware defined). Software interrupts using the INT instruction (followed by the interrupt number). The Interrupt Vector Table (or Interrupt Pointer Table) The memory block from address to 003FF. There are 1024 bytes, each of the 256 maskable interrupts uses four bytes to store the address where the corresponding ISR (Interrupt Service Routine) begins. The ISR address for interrupt number xx is stored beginning at address xx*4, in form CS:IP. From low to high address, the bytes are stored in the order: IP low, IP high, CS low and CS high (byte swapping). Example: The pointer for INT 21 is located at address:21H*4=84H. C> debug -d 0:80 L : B f 03 FB 0A 8A 03 FB 0A -q CS=0726H IP=16B4H INT 21 ISR: 08914H Hardware interrupts

2.9 The 8086: the first 80x86 Machine 8088 and 8086 pin assignments GND A14 A13 A12 A11 A10 A9 A8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND Vcc A15 A16/S3 A17/S4 A18/S5 A19/S6 ___ SS0(HIGH) ___ MN/MX ___ RD ___ ____ HOLD(RQ/GT0) ___ ____ HLDA (RQ/GT1) ___ ______ WR(LOCK) __ __ IO/M(S2) __ __ DT/R(SI) ____ __ DEN(S0) ALE(QS0) _____ INTA(QS1) _____ TEST READY RESET GND AD14 AD13 AD12 AD11 AD10 AD9 AD8 AD7 AD6 AD5 AD4 AD3 AD2 AD1 AD0 NMI INTR CLK GND Vcc AD15 A16/S3 A17/S4 A18/S5 A19/S6 ____ BHE/S7 ___ MN/MX ___ RD ___ ____ HOLD(RQ/GT0) ___ ____ HLDA (RQ/GT1) ___ ______ WR(LOCK) __ __ IO/M(S2) __ __ DT/R(SI) ____ __ DEN(S0) ALE(QS0) _____ INTA(QS1) _____ TEST READY RESET

2.9 The 8086: the first 80x86 Machine