1) what is the purpose of this model ? 2)what is the size of (AX, BX, CX, DX) an
ID: 3746288 • Letter: 1
Question
1) what is the purpose of this model ?
2)what is the size of (AX, BX, CX, DX) and (AX, BX, CX, DX) registers in protected model ?
3)what is the purpose of the memory segmentation , and how many segment are accessible by 80386 microprocessor ?
The Software/Programming Model (the simplest) 8088/8086 MPUU 0000016 External memory address space IP CS DS Code segment 000016 es ES Data segment 64 K bytes AX BX CX Input /output address space Stack segment 64 K bytes) CH FFFF16 SP BP SI DI Extra segment 64 K bytes SR FFFFF16Explanation / Answer
Ans 1-
To be able to program a microprocessor, one does not need to know all of its hardware architectural features. What is important to the programmer is to know the various registers within the device and to understand their purpose, functions, operating capabilities, and limitations. It includes fourteen l6- bit internal registers: the instruction pointer (IP), four data registers (AX, BX, CX, and DX), two pointer registers (BP and SP), two index registers (SI and DI), four segment registers (CS, DS, SS, and ES) and status register (SR), with nine of its bits implemented as status and control flags.
Ans 2-
MPU in protected mode is totally a different concept, as explained below-
. The 80286 had a protected mode of operation, in which all 24 of its address lines were available, allowing for addressing of up to 16MB of memory. In protected mode, the CS, DS, ES, and SS registers were not segments but selectors, pointing into a table that provided information about the blocks of physical memory that the program was then using. In this mode, the pointer value CS:IP = 0x0010:2400 is used as follows:
The CS value 0x0010 is an offset into the selector table, pointing at a specific selector. This selector would have a 24-bit value to indicate the start of a memory block, a 16-bit value to indicate how long the block is, and flags to specify whether the block can be written, whether it is currently physically in memory, and other information. Let's say that the memory block pointed to actually starts at the 24-bit address 0x164400, the actual address referred to then is 0x164400 + 0x2400 = 0x166800. If the selector also includes information that the block is 0x2400 bytes long, the reference would be to the byte immediately following that block, which would cause an exception: the operating system should not allow a program to read memory that it does not own. And if the block is marked as read-only, which code segment memory should be so that programs don't overwrite themselves, an attempt to write to that address would similarly cause an exception.
With CS and IP being expanded to 32 bits in the 386, this scheme became unnecessary; with a selector pointing at physical address 0x00000000, a 32-bit register could address up to 4GB of memory.
Ans 3-
Purpose of segmentation-
Segmentation is the process in which the main memory of the computer is divided into different segments and each segment has its own base address. It is basically used to enhance the speed of execution of the computer system, so that processor is able to fetch and execute the data from the memory easily and fast.
Note- for more info ref-
https://www.geeksforgeeks.org/memory-segmentation-8086-microprocessor/
Also, how many segment are accessible by 80386 microprocessor ?
Ans-
Six
Related Questions
Navigate
Integrity-first tutoring: explanations and feedback only — we do not complete graded work. Learn more.