Assembly Language Notes 1

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

Guess you like

Origin blog.csdn.net/weixin_34245749/article/details/91990152