汇编达人视频学习2(位运算之加减乘除)


title: 汇编达人视频学习2(位运算之加减乘除)
date: 2021-08-01 20点42分
tags: 汇编达人
categories: 汇编达人

1.加法运算过程

4+5?的运算过程(假设数据宽度是一个字节, 8 bit)

0000 0100
0000 0101
加法==========
​0000 1001

0000 0100
0000 0101
异或========
0000 0001

如果不考虑进位的情况下,异或的结果与按位加的结果是一样的。

异或运算:不一样的时候是 1

如:

0 和 1相加 或者 异或,结果都是 1

​ 0000 0000

​ 0000 0001

异或/加---------------------

​ 0000 0001

实现加法的过程

1)异或

​ 0000 0100 4

​ 0000 0101 5

异或----------------------------

​ 0000 0001

2)判断是否有进位

用 与 操作来判断

​ 0000 0100 4

​ 0000 0101 5

与---------------------------

​ 0000 0100

与运算:两个都为 1 的时候,结果才为 1.

如果没有进位(与 的结果为 0 ),那么之前异或的结果就是加法的结果。

如果有进位(与 的结果不为 0 ),那么继续第三步

注意:与 操作的作用是判断 进位在哪一个位置(与 的结果哪个位置是1,就说明在哪里有进位)。

3)继续异或

根据(2)的与 结果,把结果中的 1 ,左移一位,变成0000 1000

跟第(1)步的结果,继续异或

​ 0000 0001

​ 0000 1000

异或==============

​ 0000 1001

4)再次判断是否有进位

​ 0000 0001

​ 0000 1000

与=============

​ 0000 0000

没有进位,所以结果是(3)异或的结果

0000 1001 也就是 9

实现减法过程

4 - 5 = ?的运算过程

4 - 5 = 4 + (-5)

1)异或

​ 0000 0100

​ 1111 1011

​ 异或------------------------

​ 1111 1111

2)判断是否有进位

​ 0000 0100

​ 1111 1011

​ 与----------------------------------

​ 0000 0000

所以1111 1111就是 4 - 5 的结果 FF 转为有符号的数就是 -1

乘法的实现过程

X * Y 的本质就是加法 Y个X相加

加法的循环

除法的实现过程

X / Y 的本质就是减法 X能减去多少个Y

减法的循环

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值