コンパイル(III) - で操作を登録します

コンパイル(3)

汎用レジスタ

AX、BX、CX、DX

1バイト= 8ビット

2バイト= 16ビット

0000 0000 0000〜1111 1111 0000 1111 11111

これらは、それぞれ、2つの8ビットレジスタに分割することができます

AX = AH * AL

BX = BH * BL

CX = CH * CL

DH = DX * DL

なぜ、汎用レジスタはありますか?

1. 8ビットレジスタの前に互換性のために、わずかな修正を加えた前保証手順は、8086CPUで実行することができるので

2. 8ビットメモリの最小単位

CPUは、8ビットがメモリからデータのバイトのバイトを読み出します

8ビットのデータ - > 8ビットレジスタ

16本のデータ・ライン

8086CPU時間のデータは、2つのサイズで処理することができます

バイトのデータバイトの8ビット8ビットレジスタ

フォントデータの2バイト16ビット、16ビット・レジスタ2つのバイト

データのバイトは、高く、低く、

第二に、AX、BX、CX、DXの印象を深めます

MOV斧、5

MOV斧、0

MOVアル、5

Rプレスのお問い合わせ、プレストンの実行

分析下面命令
mov ax,4E20
mov bx,ax
mov ch,bl
mov cl,bh
mov dl,ch
mov ax,dx

8の16ビット・レジスタ、及び各レジスタは移動できません

mov ax,bl 不行,不能将8位数据移动到16位寄存器中
mov al,bx 不行,不能将16位数据移动到8位寄存器中

問題:私たちは、追加の処理データを使用し、またはそれ以上のアルBXよりも、それはまだ与えられていますか?

mov ax,18
mov bx,8
add ax,5

+ Cに類似の加算命令add =

超えた場合、8ビット、8ビットのデータを保存し、コンピューティング、そして他の場所に保存され、そして消えていなかったため、8ビット・レジスタ

第三に、監視ポイント2.1

各命令の後に、適切なレジスタを書きます

mov ax,62627
mov ah,31H
mov al,23H
add ax,ax
mov bx,826cH
mov cx,ax
mov ax,bx
mov ax,bx
mov al,bh
mov ah,bl
mov ah,bh
mov ah,ah
mov al,6

第四に、アドレスレジスタ

セグメント・アドレス・レジスタ、オフセットアドレスレジスタ

DS SP

それはbpで

sS

CS

LP

BX

  • CSコードセグメント
  • DSのデータセグメント
  • ssのスタックセグメント
  • 余分なセグメントであります

アドレスラインに8086 CPU 20

〜1111 1111 1111 1111 0000 0000 0000 0000

0〜FFFFF H

アドレスラインの数は、CPUのアドレス指定機能を決定します

アドレス加算アドレス計算

セグメントアドレス=オフセットアドレス+ 16 *物理アドレス

* 16のセグメントアドレス=ベースアドレス

アドレス=ベースアドレス+は、物理アドレスをオフセット

アドレスセグメント:オフセットアドレス

セグメントアドレスのオフセットアドレス

F230H * 10HのC8H

演習:

発見は本当に私たちのアドレスを変更した後、我々は、変更とアドレスを表示し、我々はまた、変更する別のアドレスに変換することができます

d 2001:1F60//查看地址
e 2001:1F60//修改地址

ファイブモニタリングポイント2.2

* 10H +セグメントアドレス=オフセットアドレス物理アドレス

(1.セグメントアドレス0001Hは、唯一のオフセットアドレスによって変化する、CPUアドレッシングレンジ) - ()

ベースアドレス10H

オフセットアドレス0〜FFFFH

物理アドレス10H〜1000FH

2.計算SA

SA * 10H + FFFFH = 20000H

SAの小数の計算があるので、そのためではなく、最初の論理アドレスを決定

六、CPUどのように命令とデータを区別するために

Uはすべての命令として、メモリアドレスへのコマンド

すべてのデータとしてD命令のメモリアドレス、

命令レジスタrを参照してください。

CSレジスタIPレジスタ

CS:コードセグメント

IP:楽器ポインタ

七、どのようにCPUの命令とデータの印象を深める区別するために

上記マシンコードEによって指示、2000Hへの入力、および修正CS IP点2000H:0、次に実行することができ

机器码           汇编指令

b8 20 4e       mov ax,4E20

05 16 14       add  ax,141

bb 00 20       mov bx,2000H

01 d8             add ax,ax

89 c3              mov bx,ax

01 d8              add ax,bx

b8 1a 88         mov ax,001AH

bb 26 00         mov bx,0026H

00 d8               add al,bl

00 dc                add ah,bl

00 c7                 add bh,al

b4 00                 mov ah,0

00 d8                add a1,b1

04 9c                 add a1,9c

八、IPレジスタと命令の間の関係

命令の命令長は、バイトの複数で構成することができるあります

命令の実行

  1. CSからのCPU:読み取り命令IP、バッファに格納され
  2. IP = IP +リードコマンドの長さ
  3. 命令キャッシュの内容の実行は最初のステップに戻り

おすすめ

転載: www.cnblogs.com/littlepage/p/11939471.html