Technological University of The Philippines: Lopez Extension Campus
Technological University of The Philippines: Lopez Extension Campus
PHILIPPINES
Lopez Extension Campus
College of Industrial Technology
Brgy. Villahermosa, Lopez, Quezon
BET- CpET 3
Memory Addresses
I learned Most of the memory ICs are byte oriented. Each memory location can
store only one byte of data. The 8086 is a 16-bit microprocessor, it can transfer 16-bit
data. So in addition to byte, word (16-bit) has to be stored in the memory. The address
space is physically connected to a 16-bit data bus by dividing the address space into two
8-bit banks of up to 512K bytes each. There is no constraint on byte or word address
boundaries. This is stored by using two consecutive memory locations, one for least
significant byte and other for most significant byte. The Memory Addressing Modes of
8086 of word is the address of least significant byte. To implement this, the entire memory
is divided into two memory bank: bank0 and bank1. Every microprocessor based system
has a memory system. Almost all systems contain two basic types of memory, read-only
memory (ROM) and random access memory (RAM) or read/write memory. Read only
memory contains system software and permanent system data such as lookup tables,
while Random Access Memory contains temporary data and application software. ROMs
/ PROMs / EPROMs are mapped to cover the CPU’s reset address, since these are
nonvolatile.
I realized that in this addressing mode, the offset address where the control is to
be shifted is defined within the instruction. It's important to separate the discussion of
these two sets of addressing modes to avoid confusing them.
I understand that the Program Memory Addressing mode is used in branch instructions.
Most 8086 instructions can operate on the 8086's general purpose register set. By
specifying the name of the register as an operand to the instruction, you may access the
contents of that register. Consider the 8086 mov (move) instruction. These branch
instructions are instructions which are responsible for changing the regular flow of the
instruction execution and shifting the control to some other location. In computing, a
memory address is a reference to a specific memory location used at various levels by
software and hardware. The 8086 microprocessor provides 20-bit Memory Addressing
Modes of 8086 that allows up to 1 Mbyte main memory. It is important in any memory
interface that one block of memory must not be allowed to overlap another memory block.
So in order to connect a memory device to the microprocessor, it is necessary to decode
the address from the microprocessor to access each memory IC independently. The way
of specifying data to be operated by an instruction is known as addressing modes. This
specifies that the given data is an immediate data or an address. It also specifies whether
the given operand is register or register pair. The 8086 memory addressing modes
provide flexible access to memory, allowing you to easily access variables, arrays,
records, pointers, and other complex data types. Mastery of the 80x86 addressing modes
is the first step towards mastering 8086 assembly language.