
常用软件类: |
|杀毒安全 | |联络聊天 | |网络软件 | |多媒体类 | |系统工具 | |图形图像 | |系统工具 | |应用软件 | |行业软件 |
开发设计类: |
|动画制作 | |图像处理 | |3D设计 | |操作系统 | |站长学院 | |网络相关 | |WEB设计 | |数据库类 | |程序开发 |
3、利用加减法及移位指令做乘法:
1)左移指令可将操作数乘 2 的整数次方(2、4、8、16);右移指令可将操作数除以 2 的整数次方。
若操作数是无符号数,用逻辑移位指令;若操作数是有符号数,用算术移位指令。
【例1】将 GR0 中的二进制数乘以 8。
【例2】将 GR0 中的带符号二进制数除以 4。
2)将移位指令和加减法结合起来可完成乘数不是 2 的整数次方的乘法运算。
【例1】将 GR0 中的二进制数乘以 10。
【例2】将 GR0 中的二进制数乘以 7。
4、二进制数与十进制数的转换
1)二化十:
将二进制数转换为十进制数的一种常用算法是将被转换的二进制数依次被 10i( 对 16 位二进制数,i为 4、3、2、1、0)除,所得的商即为该十进制数位的值,其余数再被下一个 10i 除。一般用减法代替除法,即一边减 10i,一边计数器加 1,直到不够减再进行下一位 10i-1。以求得十进制数的各位数。
例如:一个相当于十进制数 34635 的二进制数,可先用 10000 去减,可减 3 次,得万位数是 3;再用 1000 去减,得千位数是 4;……
【例1】将 GR0 中的二进制数转换为十进制数的ASCII 码放入字符串 STR 中。
1)十化二:
将十进制数转换为二进制数的算法基础是下面公式:
N = (Dn-1*10n-1+Dn-2*10n-2+……+D1*101+D0*100
= ((…((Dn-1*10+Dn-2)*10+……+D1)*10+D0)*10
可以用循环程序实现此公式,*10 可用移位及加法指令完成。
【例2】将存放在字符串 STR 中的五位十进制数(<65536)的 ASCII 码转换成二进制数放到 GR0 中 。
5、求累加和
【例1】将变量 NUMBER 中的 5 个二进制数累加后放入变量 SUM 中。
| 汇编语言消息钩子使用教程 简明x86汇编语言教程(7)编译优化概述 简明x86汇编语言教程(6)利用子程序与中断 简明x86汇编语言教程(5)串操作 简明x86汇编语言教程(4)操作内存 简明x86汇编语言教程(3)使用寄存器 简明x86汇编语言教程(2)第二章 认识处理器 简明x86汇编语言教程(1)汇编语言简介 三、Casl汇编语言试题解释 一、Casl汇编语言语法介绍 |