8085程序:查找8位数中的最小数字
在这个程序中,我们将学习如何从一个两位数中找到最小的一位数字。
问题陈述
编写一个8085汇编语言程序,从一个两位数中找到最小的一位数字。该数字存储在8000H位置,结果存储在8050H。
讨论
我们将使用掩码操作来完成此任务。每个数字占用一个半字节。我们通过与0FH(0000 1111)进行与运算来掩盖高半字节。将低半字节存储到另一个寄存器中。之后,我们获取高半字节。为了得到它,我们将数字向右移四位,将低半字节转换为高半字节。现在再次执行掩码操作,获取高半字节。通过比较它们,我们可以找到最小的一个。
输入
| 地址 | 数据 |
|---|---|
| … | … |
| 8000 | 78 |
| … | … |
流程图

程序
| 地址 | 十六进制代码 | 标签 | 助记符 | 注释 |
|---|---|---|---|---|
| F000 | 3A, 00, 80 | | LDA 8000H | 从内存中读取数字 |
| F003 | 47 | | MOV B,A | 将A的内容复制到B |
| F004 | E6, 0F | | ANI 0FH | 掩盖高半字节 |
| F006 | 4F | | MOV C,A | 将低半字节存储到C |
| F007 | 78 | | MOV A,B | 将B中的数字取到A |
| F008 | 07 | | RLC | 将A的内容左移四位 |
| F009 | 07 | | RLC | |
| F00A | 07 | | RLC | |
| F00B | 07 | | RLC | |
| F00C | E6, 0F | | ANI 0FH | 获取低半字节 |
| F00E | B9 | | CMP C | 比较C和A |
| F00F | DA, 13, F0 | | JC STORE | 如果CY = 1,则将A存储到内存 |
| F012 | 79 | | MOV A,C | 否则将C取到A |
| F013 | 32, 50, 80 | STORE | STA 8050H | 将结果存储到内存 |
| F016 | 76 | | HLT | 终止程序 |
输出
| 地址 | 数据 |
|---|---|
| … | … |
| 8050 | 07 |
| … | … |
广告
数据结构
网络
关系数据库管理系统(RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C语言编程
C++
C#
MongoDB
MySQL
Javascript
PHP