先决条件—— 二进制到/从格雷码 问题—— 用8085编写汇编语言程序,将8位数字转换成灰数
null
例如——
假设—— 8位数字(输入)存储在存储器位置2050,输出存储在存储器位置3050。
算法-
- 内存2050中的加载累加器位置
- 重置进位标志,即CY=0
- 使用进位将累加器的内容向右旋转1位,并使用输入的初始值执行异或操作
- 将结果存储在存储位置3050
项目-
内存地址 | 助记符 | 评论 |
---|---|---|
2000 | LDA 2050 | A |
2003 | 莫夫B,A | B |
2004 | STC | CY=1 |
2005 | CMC | CY |
2006 | 拉尔 | 用进位向右旋转1位 |
2007 | XRA B | A |
2008 | STA 3050 | M[3050] |
200B | HLT | 节目结束 |
解释——
- LDA 2050 在累加器中加载内存位置2050的内容
- 莫夫B,A 在寄存器B中传输寄存器A的内容
- STC 设置进位标志,即CY变为1
- CMC 补充进位标志,即CY变为0
- 拉尔 将累加器的内容与进位标志一起旋转1位
- XRA B 对寄存器A和寄存器B的值执行异或运算,并将结果存储在寄存器A中
- STA 3050 将累加器的值存储在内存位置3050中
- HLT 停止执行程序并停止任何进一步的执行
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END