8086有几个通用寄存器?可分哪两组?
8086有8个通用寄存器,包括累加器AX、基址寄存器BX、计数寄存器CX、数据寄存器DX、堆栈指针SP、基址指针BP、源变址寄存器SI、目的变址寄存器DI。它们可分为以下两组:(1)数据寄存器包括累加器AX、基址寄存器BX、计数寄存器CX和数据寄存器DX。数据寄存器的特点是,这4个16位寄存器可分为高8位(AH、BH、CH和DH)与低8位(AL、BL、CL和DL),这两组8位寄存器可分别寻址、独立操作。这样,可以将数据寄存器作为一个16位寄存器进行操作,也可作为两个8位寄存器。数据寄存器可以用来存放8位或16位的二进制操作,这些操作数可以是参加操作的数据、操作的中间结果,也可以是操作数的地址。大多数算术和逻辑运算指令都可以使用这些数据寄存器。(2)指针寄存器和变址寄存器堆找指针SP、基址指针BP、源变址寄存器SI和目的变址寄存器DI这4个寄存器只能按16位进行存取操作,主要用来形成操作数的地址,用于堆栈操作和变址运算中计算操作数的有效地址。其中SP、BP用于堆栈操作,SP用来确定堆栈在内存中的地址,BP用来存放在现行堆栈的一个数据区的“基地址”。SI、DI用于变址操作,存放变址地址。这4个寄存器也可用作数据寄存器。