zoukankan      html  css  js  c++  java
  • 汇编学习笔记11

    第11讲讲了剩下两个减法指令: NEG 和 CMP

    NEG OP 对OP进行求补,然后将结果送入OP,操作数可以是通用寄存器和存储单元。当OP为8位-128或16位-32768时,结果为它自身。当OP为0时,CF位为0,其他时候都为1。NEG操作其实是 OP = 0 - OP。

    CMP OP1, OP2 比较操作,用OP1 - OP2, 与SUB规则相同,不同之处在于不把结果送回OP1,根据标志位来判断比较的结果。ZF = 0时两操作数相等,否则不相等。当不相等时,如果是无符号数,根据CF位来判断大小;如果是有符号数,根据OF和SF来判断大小。有符号数不相等时怎么判断?如果OF = 0,无溢出,SF = 0时OP1 > OP2,否则OP1 < OP2。如果OP = 1,有溢出,SF = 0时,OP1 < OP2, 此时,OP1为负, OP2为正,SF = 1时,OP1 > OP2,此时, OP1为正, OP2为负。

    剩下时间讲加减法的应用。

    例: 已知 字存储单元 X, Y, Z, 将 X + (Y + Z – 25H) 送入Z中

    MOV AX, Y

    ADD AX, Z

    SUB AX, 25H

    ADD AX, X

    MOV Z, AX

    例: 已知双字存储单元 X, Y, Z, 将 X + (Y + Z – 25H) 送入Z中

    MOV AX, Y

    MOV DX, Y + 2

    ADD AX, Z

    ADC DX, Z + 2

    SUB AX, 25H

    SBB DX, 0

    ADD AX, X

    ADC DX, X +2

    MOV Z, AX

    MOV Z+2, DX

  • 相关阅读:
    nth-child与nth-of-type
    改变事件绑定的this的问题
    瀑布流的一些CSS实现方式
    事件捕获与冒泡的再探
    为学
    ECharts导出word 图表模糊失真
    垂直对齐:vertical-align:super属性
    Vuex- Action的 { commit } {commit}是什么写法
    修改对象中的属性名
    echarts 角度渐变环形图心得
  • 原文地址:https://www.cnblogs.com/hailong/p/1899434.html
Copyright © 2011-2022 走看看