首页 > 代码库 > 汇编笔记

汇编笔记

1.在8086CPU中,只有这4个寄存器(bx,bp,si,di)可以用在“[...]”中来进行内存单元的寻址。在“[...]”中,这4个寄存器(bx,bp,si,di)可以单个出现,或只能以四种组合出现:bx和si、bx和di、bp和si、bp和di


2.div是除法指令(division),使用div作除法的时候:
除数:8位或16位,在寄存器或内存单元中
被除数:(默认)放在AX或DX和AX中
除数 被除数
8位 16位(AX)
16位 32位(DX+AX)
3.一般来说,我们可以用[bx+idata+si]的方式来访问结构体中的数据。用bx定位整个结构体,用idata定位结构体中的某一个数据项,用si定位数组项中的每个元素
4.在C语言程序中我们看到,如:dec.cp[i],dec是一个变量名,指明了结构体变量的地址,cp是一个名称,指明了数据项cp的地址,而i用来定位cp中的每一个字符。汇编语言中的做法是:bx.10h[si]。
5.某些指令默认了访问的是字单元还是字节单元,比如:push[1000H]就不用指明访问的是字单元还是字节单元,因为push指令只进行字操作。
6.指令在执行前,所要处理的数据可以在三个地方:
CPU内部、内存、端口

和C语言的比较:

    mov ax,seg

   mov ds,ax

  mov bx,60h

汇编笔记