初级汇编程序(二)

来源:互联网 发布:公寓值得投资吗 知乎 编辑:程序博客网 时间:2024/05/29 03:04

二、分支结构
接上篇的顺序结构汇编程序,接下来看一段分支结构程序。

比较两个无符号数大小,将大数存入MAX单元

这里写图片描述

关键在于jnc branch这句,表示标志位CF=0时转移至branch。CF则是上一句的结果。CMP DEST,SRC比较命令,功能则是(DEST)-(SRC),不保留差,但保留ZF,CF,OF,SF等标志位结果。若ZF=1,表示(DEST)=(SRC);对于无符号数,表示(DEST)≥(SRC);若CF=1,则(DEST)<(SRC);对于带符号数,若OF=SF,表示(DEST)>(SRC);若OF≠SF,表示(DEST)<(SRC)。

这里写图片描述
将95和64存入数据段
这里写图片描述
较大数95为第三个数

那么,对于无符号数的情况呢?
这里写图片描述
需将jnc改为jge,表示SF=OF OR ZF=1,即A≥B

这里写图片描述

结果较大数却是64!为什么呢?
其实将95和64化成二进制数就明白了,在计算机里的二进制数的第一位称为符号位,符号位为0是正数,为1是负数。

0 0
原创粉丝点击