回覆列表
  • 1 # 使用者928021938244

    8086cpu的通用暫存器有8個,又可以分成2組,一組是資料暫存器(4個),

    另一組是指標暫存器及變址暫存器(4個).

    資料暫存器分為:

    ah&al=ax(accumulator):累加暫存器,

    常用於運算;在乘除等指令中指定用來存放運算元,另外,

    所有的i/o指令都使用這一暫存器與外界裝置傳送資料.

    bh&bl=bx(base):基址暫存器,常用於地址索引;

    ch&cl=cx(count):計數暫存器,常用於計數;

    常用於儲存計算值,如在移位指令,迴圈(loop)

    和串處理指令中用作隱含的計數器.

    dh&dl=dx(data):資料暫存器,常用於資料傳遞。

    他們的特點是,這4個16位的暫存器可以分為高8位:ah,bh,ch,dh.以及低八位:al,bl,cl,dl。

    這2組8位暫存器可以分別定址,並單獨使用。

    另一組是指標暫存器和變址暫存器,包括:

    sp(stackpointer):堆疊指標,與ss配合使用,

    可指向目前的堆疊位置;

    bp(basepointer):基址指標暫存器,

    可用作ss的一個相對基址位置;

    si(sourceindex):

    源變址暫存器可用來存放相對於ds段之源變址指標;

    di(destinationindex):目的變址暫存器,可用來存放相對於es段之目的變址指標。

    這4個16位暫存器只能按16位進行存取操作,

    主要用來形成運算元的地址,

    用於堆疊操作和變址運算中計算運算元的有效地址。

  • 中秋節和大豐收的關聯?
  • 如何辨別專案是否可以在indiegogo平臺上啟動?