ディレクトリ
コンパイル(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レジスタと命令の間の関係
命令の命令長は、バイトの複数で構成することができるあります
命令の実行
- CSからのCPU:読み取り命令IP、バッファに格納され
- IP = IP +リードコマンドの長さ
- 命令キャッシュの内容の実行は最初のステップに戻り