8085程序将一个字节拆分成两个半字节
我们将学习如何将一个8位数的两个半字节分开。
问题陈述
编写8085汇编语言程序,将一个8位数的两个半字节分开。数字存储在F050处,我们将结果存储在F051和F052处。
讨论
为了分别获得半字节,我们首先将数字作为副本复制到B寄存器中。现在屏蔽高半字节以获得低半字节并将其存储,然后再次从B中取出数字,屏蔽低半字节以获得高半字节,然后将其旋转四次以使其成为低位半字节,之后将其存储到另一个位置。
输入
| 地址 | 数据 |
|---|---|
| F050 | 35 |
| 地址 | 数据 |
|---|---|
| F050 | BE |
流程图

程序
| 地址 | 十六进制代码 | 标签 | 助记符 | 注释 |
|---|---|---|---|---|
| F000 | 3A, 50 F0 | | LDA F050 | 将内存中的数字取到累加器 |
| F003 | 47 | | MOV B,A | 将累加器中的数字存储到B |
| F004 | E6, 0F | | ANI 0F | 累加器与0F进行与运算以获得低半字节 |
| F006 | 32, 52, F0 | | STA F052 | 将低半字节存储到内存 |
| F009 | 78 | | MOV A,B | 将主要数字从B加载到A |
| F00A | E6, F0 | | ANI F0 | 累加器与F0进行与运算以获得高半字节 |
| F00C | 07 | | RLC | 将累加器左移 |
| F00D | 07 | | RLC | 将累加器左移 |
| F00E | 07 | | RLC | 将累加器左移 |
| F00F | 07 | | RLC | 将累加器左移 |
| F010 | 32, 51, F0 | | STA F051 | 将高半字节存储到F051 |
| F013 | 76 | | HLT | 结束程序 |
输出
| 地址 | 数据 |
|---|---|
| F051 | 03 |
| F052 | 05 |
| 地址 | 数据 |
|---|---|
| F051 | 0B |
| F052 | 0E |
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP