Posts

Showing posts with the label INTEL 8086

Questions and problems

Image
QUESTIONS AND PROBLEMS 9.1 What is the basic difference between the 8086, 8086-1, 8086-2, and 8086-4? 9.2 Assume (DS)=1000H, (SS)=2000H, (CS)=3000H, (BP)=OOOFH, (BX)=000AH before execution of the following 8086 instructions: (a) MOV CX,[BX]                    (b) MOV DX,[BP] Which instruction will be executed faster by the 8086, and why ? 9.3 What is the purpose of the 8086 MN/MX pin? 9.4 If (DS) = 205FH and OFFSET = 0052H, what is the 8086 physical address? Does the EU or BIU compute this physical address? 9.5 In an 8086 system, SEGMENT 1 contains addresses 00100H-00200H and SEGMENT 2 also contains addresses 001OOH-00200H. What are these segments called? 9.6 Determine the addressing modes for the following 8086 instructions: 9.7 Find the overflow, direction, interrupt, trap, sign, zero, parity, and carry flags after execution of the following 8086 instruction sequ...

8086 I/O Ports , Important Points To Be Considered for 8086 Interface to Memory and I/O and 8086-Based Microcomputer

Image
9.9.3 8086 I/O Ports Devices with 8-bit I/O ports can be connected to either the upper or the lower half of the data bus. If the I/O port chip is connected to the lower half of the 8086 data lines (AD0- AD7), the port addresses will be even (A 0 = 0). On the other hand, the port addresses will be odd (A0 = 1) if the I/O port chip is connected to the upper half of the 8086 data lines (AD8-AD 15 ). A0 will always be 1 or 0 for the partitioned I/O chip. Therefore, A 0 cannot be used as an address input to select registers within a particular I/O chip. If two chips are connected to the lower and upper halves of the 8086 address bus that differ only in A0 (consecutive odd and even addresses), A0 and BH E must be used as conditions of chip select decoding to avoid a write to one I/O chip from erroneously performing a write to the other. The 8086 uses either standard I/O or memory-mapped I/O. The standard I/O uses the instructions IN and OUT, and is able to provide up to 64K bytes of I/...

Interfacing an 8086-Based Microcomputer to a Hexadecimal Keyboard and Seven-Segment Displays , Basics of Keyboard and Display Interface to a Microcomputer and Hex Keyboard Interface to an 8086-Based Microcomputer

Image
9.12 Interfacing an 8086-Based Microcomputer to a Hexadecimal Keyboard and Seven-Segment Displays This section describes the characteristics of the 8086-based microcomputer used with a hexadecimal keyboard and a seven-segment display. 9.12.1 Basics of Keyboard and Display Interface to a Microcomputer A common method of entering programs into a microcomputer is via a keyboard. A popular way of displaying results by the microcomputer is by using seven-segment displays. The main functions to be performed for interfacing a keyboard are: Sense a key actuation. Debounce the key. Decode the key. Let us now elaborate on keyboard interfacing concepts. A keyboard is arranged in rows and columns. Figure 9.28 shows a 2 x 2 keyboard interfaced to a typical microcomputer. In Figure 9.28, the columns are normally at a HIGH level. A key actuation is sensed by sending a LOW (closing the diode switch) to each row one at a time via PAO and PAl of port A. The...

8086 Interrupts , Predefined Interrupts , Internal Interrupts , External Maskable Interrupts , Interrupt Procedures , Interrupt Priorities , Interrupt Pointer Table and 8086 DMA

Image
9.10 8086 Interrupts The 8086 assigns every interrupt a type code so that the 8086 can identify it. Interrupts can be initiated by external devices or internally by software instructions or by exceptional conditions such as attempting to divide by zero. 9.10.1 Predefined Interrupts The first five interrupt types are reserved for specific functions. The interrupt vectors for these five interrupts are predefined by Intel. The user must provide the desired IP and CS values in the interrupt pointer table. The user may also initiate these interrupts through hardware or software. If a predefined interrupt is not used in a system, the user may assign some other function to the associated type. The 8086 is automatically interrupted whenever a division by zero is attempted. This interrupt is nonmaskable and is implemented by Intel as part of the execution of the divide instruction. When the TF (trap flag) is set by an instruction, the 8086 goes into single-step mode. The TF can ...

System Desi :n Usin : the 8086 , 8086 Pins and Signals , Clock Generation Signals , Ready Signals , Basic 8086 System Concepts , 8086 Bus Cycle and Address and Data Bus Concepts .

Image
9.9 System Desi :n Usin : the 8086 This section covers the basic concepts associated with interfacing the 8086 with its support chips such as memory and I/O . Topics such as timing diagrams and 8086 pins and signals will also be included. Appendix E provides data sheets for Intel 8086 and support chips. 9.9.1 8086 Pins and Signals The 8086 pins and signals are shown in Figure 9.8. As mentioned before, the 8086 can operate in two modes. These are the minimum (uniprocessor systems with a single 8086) and maximum mode (multiprocessor system with more than one 8086). MN/MX is an input pin used to select one of these modes. When MN/MX is HIGH, the 8086 operates in the minimum mode. In this mode, the 8086 is configured (that is, pins are defined) to support small single-processor systems using a few devices that use the system bus. When MN/MX is low, the 8086 is configured (that is, some of the pins are redefined in maximum mode) to support multiprocessor systems. In this case, t...