美文网首页
<<汇编语言>>第11章笔记

<<汇编语言>>第11章笔记

作者: zzkdev | 来源:发表于2018-05-27 17:33 被阅读0次

标志寄存器

标志寄存器有以下3种作用:

  1. 用来存储相关指令的某些执行结果
  2. 用来为CPU执行相关指令提供行为依据
  3. 用来控制CPU的相关工作方式

note : 标志寄存器与其他寄存器不一样,它是按位起作用的,也就是说它每一位都有专门的含义,记录特定信息。

ZF标志

标志寄存器的第6位是ZF,零标志位。它记录相关指令执行后,其结果是否为0。结果为0的话,那么zf = 1,不为零的话,zf = 0

note : 有的指令不影响标志寄存器,比如:mov、push、pop等传送指令。

PF标志

标志寄存器的第2位是PF,奇偶标志位。它记录相关指令执行后,其结果的所有bit位中1的个数是否为偶数。如果1的个数是偶数,PF = 1,奇数则为0。

SF标志

标志寄存器的第7位是SF,符号标志位。它记录相关指令执行后,其结果是否为负。如果为负,SF = 1,否则为0。

CF标志

标志寄存器的第0位是CF,进位标志位。在做无符号运算时,它记录了最高有效位向更高位的进位制,或从更高位的借位值。

OF标志

标志寄存器的第11位是OF,溢出标志位。一般情况下,OF记录了有符号运算的结果是否发生了溢出。如果发生了溢出,OF=1,否则为0。

adc指令

adc是带进位的加法指令,它利用了CF位上记录的进位值。
指令格式:adc 操作对象1 + 操作对象2 + CF

# 示例 
# 计算 1EF000H + 201000H,结果放在ax(高16位)和bx中(低16位)
mov ax, 001EH
mov bx, 0F000H
add bx, 1000H
adc ax, 0020H

sbb指令

sbb指令是带借位的错位减法指令,它利用了CF位上记录的借位值
指令格式:sbb 操作对象1, 操作对象2
功能:操作对象1 = 操作对象1 - 操作对象2 - CF

# 示例
# 计算003E1000H - 00202000H,结果放在ax, bx中
mov bx, 1000H
mov ax, 003EH
sub bx, 2000H
sbb ax, 0020H

cmp指令

cmp是比较指令,cmp功能相当于减法指令,只是不保存结果。cmp指令执行后,将对标志寄存器产生影响。其他指令通过识别被影响的标志寄存器来得知比较结果
cmp指令格式:cmp 操作对象1, 操作对象2

检测比较结果的转移指令

下面是无符号数的比较结果进行转移的条件转移指令。

DF标志和串传送指令

标志寄存器的第10位是DF,方向标志位。在串处理指令中,控制每次操作后si、di的递减。

movsb和movsw

movsw和movsb相似,只是把内存单元还成了以字为单位。
movsb和movsw一般都是和rep配合来使用,格式如下:
rep movsb
用汇编语法来描述就是:

s: movsb
    loop s

8086CU提供下面两条指令对df位进行设置。
cld指令:将标志寄存器df位置0
std指令:将标志寄存器df位置1
下面是示例:

pushf和popf

pushf是将标志寄存器的值压栈,popf是从栈中弹出数据,送入标志寄存器中。


这里是我的博客


相关文章

  • 汇编语言 学习笔记(三)

    汇编语言学习笔记 四、汇编语言程序格式 语句基本格式 汇编语言程序中的语句由 4 项组成,格式如下: 名字(nam...

  • 汇编语言之基础

    本系列为学习<汇编语言> 王爽版 的学习笔记 [TOC] 汇编语言是什么? 汇编语言是直接在硬件之上工作的编程语言...

  • 《《汇编语言(第3版) 》王爽著》 分享下载

    书籍信息 书名: 《汇编语言(第3版) 》王爽著 标签: 《汇编语言(第3版) 》王爽著,免费,程序员书籍,编程,...

  • 笔记——第一章

    @(读书笔记)[汇编语言,计算机] 基础知识 为什么要有汇编语言 CPU——电平脉冲(高低平)——二进制数字——机...

  • 汇编语言 Ch1-基础知识 笔记

    汇编语言 Ch1-基础知识 笔记 ![](http://picture-repository-of-heamon7...

  • x86 reading Note(2):Task Switch

    《x86 汇编语言从实模式到保护模式》 第15章:任务切换 读书笔记 任务切换的原理 任务切换的两种类型 协同式 ...

  • x86 reading Note(1):Privilige Sw

    《x86 汇编语言从实模式到保护模式》 第14章:任务和特权级保护 读书笔记 前言 不想把书上的内容复述一遍,除了...

  • <<汇编语言>>第11章笔记

    标志寄存器 标志寄存器有以下3种作用: 用来存储相关指令的某些执行结果 用来为CPU执行相关指令提供行为依据 用来...

  • <<汇编语言>>第1章笔记

    第一章 基础知识 汇编语言基本概念 汇编指令是机器指令便于记忆的书写格式,通过编译器把汇编指令对应到机器指令,汇编...

  • 编程语言的进化

    第95篇 极客时间《许式伟的架构课》课程笔记。 编程语言的出现,诞生了程序员这个职业,汇编语言则是程序员这个分工出...

网友评论

      本文标题:<<汇编语言>>第11章笔记

      本文链接:https://www.haomeiwen.com/subject/cpxpjftx.html