Machine language - assembly language - level language
Assembly language features:
1 associated hardware
2-one correspondence with the machine instructions
3 shall describe in detail how to do
4 poor portability
CPU functional structure:
Bus interface unit BIU
Execution unit EU
CPU register structure:
Data register
Index register pointer and
Segment register
Control register
The BIU bus interface unit ---- complete information transfer between the CPU and main memory or peripheral devices
EU execution unit performs the instruction is completed ----
Two independent units, working in parallel, so that the reading and execution of the instruction overlap, improve instruction execution speed of the instruction pipeline structure ----
Data register (byte or word form may be accessed, for example, AX high byte and low byte respectively AH / AL shown)
AX accumulator operand and result
BX register stores the base address offset
CS count cycle count register
DX data register in combination with a double word into a 32-bit AX
And index register pointer (the offset address is stored, the operand can also be stored in word units but only access)
SP Stack Pointer Register
Base pointer register BP
A source index register SI
Object index register DI
Segment register (base address storage section (first paragraph addresses the upper 16 bits) of the respective segment)
Code segment register CS
Data segment register DS
The stack segment register SS
Additional segment register ES
Control register
Instruction pointer register IP: the program counter, an instruction downwardly offset in code segment
PSW Program Status Register: recording various status information and operation of the system. Composed of various flag bits, wherein the result of the calculation to reflect the impact of the implementation of some kind of instruction.
20 address lines, a maximum of 1MB
Index bytes, i.e., byte data occupies one memory cell
When storing data in word units, two units occupy adjacent, upper 8 bits are stored in the high byte of the address, the lower 8 bits are stored in the low address byte
With its address word units represents a low address
Visit the main memory directive should be noted that byte access or word access
Address word units is usually an even number
Segment concept introduced
How 16-bit register indicates the 20-bit address?
Using a memory address segment method
It is the maximum length of 64kb segment of the memory block
Start of section 4 must be low 0
Users can use four segments, inter-segment can be contiguous, overlapping or non-adjacent
The current code segment storing an instruction code program
Source data segment stores a program according to the result or
Stack segment on a "first in, last out" principle data area
Additional sections is an auxiliary data region, strings or other data storage
Reproduced in: https: //my.oschina.net/u/204616/blog/545391