加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

[汇编进修条记][第八章数据处理赏罚的两个根基题目]

发布时间:2021-05-15 03:07:33 所属栏目:大数据 来源:网络整理
导读:第八章 数据处理赏罚的两个根基题目 本章对前面具有总结性。首要办理以下两个题目 处理赏罚的数据在什么处所 要处理赏罚的数据有多长 界说描写标记reg和sreg reg:ax,bx,cx,dx,ah,al,bh,bl,ch,cl,dh,dl,sp,bp,si,di; sreg:ds,ss,cs,es。 8.1 bx,di和bp 在8086CPU中,只有

第八章 数据处理赏罚的两个根基题目

本章对前面具有总结性。首要办理以下两个题目

  • 处理赏罚的数据在什么处所
  • 要处理赏罚的数据有多长

界说描写标记reg和sreg

  • reg:ax,bx,cx,dx,ah,al,bh,bl,ch,cl,dh,dl,sp,bp,si,di;
  • sreg:ds,ss,cs,es。

8.1 bx,di和bp

  • 在8086CPU中,只有这4个寄存器可以用在"[..]"傍边来举办内存单位的寻址。
  • 4种寄存器可以单独呈现,不然只能以这四种组合呈现

    • bx和si
    • bx和di
    • bp和si
    • bp和di
  • 重点:只要在[..]中行使bp,而指令中没有显性地给出地点,段地点默以为ss中

  • 不太懂这三个法则的由来

8.2 呆板指令处理赏罚的数据在什么处所

在呆板指令这一层来说,不体谅数据的值,体谅指令执行前一刻,他将要处理赏罚的数据的位置。

  • CPU内部
  • 内存
  • 端口

8.3 汇编说话中数据位置的表达

  • 当即数(idata)

    执行前在CPU的指令缓冲器中

  • 寄存器

    在CPU内寄存器中

  • 段地点(SA)和偏移地点(EA)

    在内存或端口

8.4 寻址方法

8.4.1 直接寻址

情势 [idata]

寄义 平凡变量

8.4.2 寄存器间接寻址

情势 [bx],[si],[di],[bp]

寄义

  • 数组

8.4.3 寄存器相对寻址

情势 [bx+idata]….idata[bx]….[bx].idata

寄义

  • 二维数组 [bx][idata]
  • 一维数组 idata[bx]
  • 布局体 [bx].idata

8.4.4**基址变址寻址**

情势 [bx+si],[bx+di],[bp+si],[bp+di]

寄义

  • 二维数组 [bx][si]

8.4.5 相对基址变址

情势 [bx+si+idata],[bx].idata[si],idata[bx][si]

寄义

  • 平凡数组 [bx+si+idata]
  • 布局中的数组 [bx].idata[si]
  • 二维数组 idata[bx][si]

8.5 指令要处理赏罚的数据有多长

8086CPU的指令,可以处理赏罚两种尺寸的数据,byteword。在呆板指令中要指明处理赏罚那种数据。
汇编说话有以下要领处理赏罚。

  • 通过寄存器名指明要处理赏罚的数据的尺寸。
  • 用操纵符X ptr指明长度,X可所以word/byte
  • 其他要领,push只举办字操纵

Tips:

留意 inc byte ptrinc word prt的区别

答:在不进位的时辰,两者没有区别,进位的时辰,byte会丢弃进位。

8.6 寻址方法的综合应用

mov si,0
mov byte ptr [bx].10h[si],'V'
inc si
mov byte ptr [bx].10h[si],'A'
inc si
mov byte ptr [bx].10h[si],'X'

8.7 div指令

  • 除数:有8位,和16位两种。按照8.5鉴定。
  • 被除数:
    • 8位:默认放在AX中
    • 16位:默认放在DX和AX中,DX存高16位,AX存低16位
  • 功效
    • 8位:AL存储商,AH存储余数
    • 16位:AX存储商,DX存储余数

名目如下

div reg
div byte/word ptr 内存单位

至于溢出的题目
会提醒 divide error - overflow.

至于怎么办理,要看后头的说明

8.8 伪指令dd

dd=Double worD,双字型数据,32位

data segment
  db 1
  dw 1
  dd 1
data ends
实质:
db=01H
dw=0001H
dd=00000001H

8.9 dub

dub是一个操纵符,伪指令用于举办数据的一再

语法

db/dw/dd 一再次数 (一再的db/dw/dd数据)

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读