汇编中的数据处理

数据处理的两个基本问题:

  1、处理的数据在什么地方

  2、要处理的数据是多长

reg表示寄存器    sreg表示段寄存器

8086CPU中reg:ax,bx,cx,dx,ah,al,bh,bl,ch,cl,dh,dl,sp,bp,si,di

     sreg:  ds,ss,cs,es

 

在8086CPU中只有bx,bp,si,di  可以在[  ]   中来进行内存单元的寻址   (*   bx+bp     si+di  语法错误)

汇编语言中数据位置的表达

立即数(idata)                寄存器        段地址(SA)+偏移地址(EA)

指令要处理的数据在内存中,在汇编指令可以通过[EA],再加上某个寄存器中的SA   (SA可以隐性给出,[bx]表示SA在ds中,[bp]表示SA在ss中)

寻址方式

 

指令要处理的数据有多长

8086CPU中的指令,可以处理两种尺寸的数据    byte   word

  1、通过寄存器指明数据长度

  2、用byte/word  ptr  显性给出数据长度    mov byte ptr ds:[0],1         mov word ptr ds:[0],2   1->01(byte)    2->0002(word)

  3、push/pop   只进行字单元操作

寻址方式的综合应用

 

posted @ 2020-04-02 22:27  pie_thn  阅读(250)  评论(0编辑  收藏  举报