8086汇编学习笔记——0

1.一些符号的约定
1)address 表示某个内存单元的相对于寄存器的偏移地址
2.汇编指令
1)mov:

 mov ax,bx                 ;将bx中的内容送到axmov ax,ds:[address]       ;将ds:address所指向的数据送入ax中(一个字,即两个字节。如果只要传输一个字节可以使用寄存器的高八位(ah)或者底八位(al)进行  
 mov ds:[address],ax       ;将ax中的数据(一个字单位)送出ds:address所指定的内存单元中

2) add:

 add ax,1    ;将ax中的数据加一

3)sub:

 sub ax,1    ;将ax中的数据减一

4)push:

 push ax    ;将ax压入栈中(push是以字为单位进行的)

5)pop:

 pop ax     ;将栈顶数据取出存入ax中(pop也是按照字为单位进行的)

6)loop:

     mov cx,1
 f: add ax
     loop f   ;执行到此后判断cx是否为零,不为零则跳转到f处继续执行,并且将cx减一  

7)and:

 mov al,11101101H
 and al,00110001H   ;将al中的数据与00110001H进行逻辑与运算

8)or:

 mov al,11101101H
 or al,00110001H    ;将al中的数据与00110001H进行逻辑或运算

9)div:

 ;使用除法指令时应注意以下几点:
 ;1.除数:放在寄存器或者内存单元中
 ;2.被除数:默认放在ax或者dx和ax中,如果除数为八位,则被除数为十六位,被除数默认放在ax中。如果除数为16位,则被除数为32位,dx中存放被除数的高八位,ax中存放被除数的底八位。
 ;运算结果:除数为八位时,al存放商,ah存放余数。除数为16位时,ax存放商,dx存放余数

mov ax,101
mov bl,1
div bl   ;计算101/1

…………………………
……………………

你可能感兴趣的:(Assembly,Language)