例:1100b = 12, 1101b = 13,
12*13 = 156, 1100b*1101b = 10011100b
算术演绎:
1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0
X 1 1 0 1 X 0 0 0 1 X 0 0 0 0 X 0 1 0 0 X 1 0 0 0
------------------ = ------------------- + ------------------- + ------------------- + -------------------
1 1 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 1 1 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0
------------------ ------------------- ------------------- ------------------- -------------------
1 0 0 1 1 1 0 0 = 0 0 0 0|1 1 0 0, + 0 0 0 0|0 0 0,0 + 0 0 1 1|0 0,0 0 + 0 1 1 0|0,0 0 0
算术意义: 在一位上有1 个1100 在二位上有0 个1100 在四位上有1 个1100 在八位上有1 个1100
数学意义: 有1个1100 无 有4个1100 有8个1100
数学意义转算术表达:在一位写1100 无 在四位上写1100 在八位上写1100
得:算术表达 === 数学意义(最终的算术表达,符合整个运算的数学意义)
二进制乘法的理解:1100b*1101b理解为,1100b*(1000b + 100b + 1b),即在一位、四位、八位,都有一个1100b(类似十进制12*13,理解为,个位有3个12,十位有1个12)