3K+ 阅读量
现在让我们来看一个 Intel 8085 微处理器的程序。此程序将计算两个 16 位数的乘积。问题陈述编写 8085 汇编语言程序,用于将存储在 8000H - 8001H 和 8002H - 8003H 中的两个 16 位数相乘。讨论此程序从存储位置 8000H – 8001H 和 8002H – 8003H 获取 16 位数据。32 位结果存储在位置 8050H – 8053H。在这里,我们使用两个 16 位数进行了测试。结果如下:1111H × 1111H = 01234321H 1C24H × 0752H = 00CDFF88H输入第一个输入地址数据......800011800111800211800311......第二个输入地址数据......80002480011C800252800307......流程图程序地址十六进制代码标签助记符注释F00031, 00, 20LXI SP, 2000H 初始化堆栈指针F0032A, 00, ... 阅读更多
现在让我们来看一个 Intel 8085 微处理器的程序。此程序将找到两个 BCD 数的乘积结果。问题陈述编写 8085 汇编语言程序,用于查找两个 BCD 数的乘积。这些数字存储在位置 8000H 和 8001H 中。讨论在此程序中,数据从 8000H 和 8001H 获取。结果存储在位置 8050H 和 8051H 中。众所周知,8085 没有乘法指令,因此我们必须使用重复加法方法。在此过程中,在每次加法后,我们都会调整累加器值以获得十进制等效值。当存在进位时,我们增加... 阅读更多
现在让我们来看一个 Intel 8085 微处理器的程序。此程序将找到两个 8 位数的 LCM。问题陈述编写 8085 汇编语言程序,用于查找存储在位置 8000H 和 8001H 中的两个 8 位数的 LCM讨论在此程序中,我们正在从 8000H 和 8001H 读取数据。通过加载数字,我们将其存储在 C 寄存器中,并清除 B 寄存器。第二个数字加载到累加器中。将 DE 设置为 BC 寄存器的 2 的补码。此 DE 用于从 HL 对中减去 BC。方法如下:假设数字是 25 和 15。... 阅读更多
4K+ 阅读量
现在让我们来看一个 Intel 8085 微处理器的程序。此程序将 ASCII 转换为二进制值。问题陈述编写 8085 汇编语言程序以检查位模式是否为回文。讨论在此程序中,我们正在从位置 8000H 获取数字。如果数字不是回文,则程序将返回 00H,否则将返回 FFH。假设输入为 18H,则二进制值为 (0001 1000),这是一个回文。数字 52H(0101 0010) 它不是回文。在此问题中,我们将第一个数字输入到累加器中,然后将其左移。当... 阅读更多
10K+ 阅读量
在此程序中,我们将了解如何将二进制数转换为其 BCD 等效值。问题陈述二进制数存储在位置 800H 中。将其转换为 BCD 等效值并将其存储到内存位置 8050H 中。讨论在这里,我们从内存中获取一个数字,并将其初始化为计数器。现在,在此计数器的每个步骤中,我们将数字加 1,并调整十进制值。通过此过程,我们找到了二进制数或十六进制数的 BCD 值。在这种情况下,我们可以使用 INR 指令来递增计数器,但此指令... 阅读更多
在此程序中,我们将了解如何将 BCD 数转换为二进制等效值。问题陈述BCD 数存储在位置 802BH 中。将其转换为二进制等效值并将其存储到内存位置 802CH 中。讨论在此问题中,我们从内存中获取一个 BCD 数并将其转换为其二进制等效值。首先,我们截取输入的每个 nibble。因此,如果输入为 52 (0101 0010),那么我们可以简单地通过将数字与 0FH 和 F0H 掩码来截取它。当高位 nibble 被截取时,然后将其左移四次以传输... 阅读更多
现在让我们来看一个 Intel 8085 微处理器的程序。此程序将 ASCII 转换为二进制值。问题陈述编写 8085 汇编语言程序以将 ASCII 转换为二进制或十六进制字符值。讨论我们知道数字 00H 的 ASCII 为 30H (48D),而 09H 的 ASCII 为 39H (57D)。因此所有其他数字都在 30H 到 39H 的范围内。0AH 的 ASCII 值为 41H (65D),而 0FH 的 ASCII 值为 46H (70D),因此所有其他字母 (B、C、D、E、F) 都在 41H 到 46H 的范围内。这里的逻辑很简单。我们正在检查 ASCII... 阅读更多
2K+ 阅读量
在此程序中,我们将了解如何使用 8085 查找两个数字的 HCF 或 GCD。问题陈述编写 8085 汇编语言程序以查找存储在内存位置 8000H 和 8001H 中的两个数字的 HCF。讨论此问题通过欧几里得算法来解决以查找 HCF。此算法非常简单。算法步骤如下:如果第一个数字和第二个数字相同,则转到步骤 3。否则,如果第一个数字 < 第二个数字,则交换 no1 和 no2。第一个数字 A,然后交换 B 和 AF00D90SUB B 如果 B < A,则从 AF00EC3、06、F0JMP LOOP 中减去 B 跳到 LOOPF01148EXGMOV ... 阅读更多
9K+ 阅读量
在此程序中,我们将了解如何使用 8085 从字节块中查找最小数。问题陈述编写 8085 汇编语言程序以从字节块中查找最小数。讨论在此程序中,数据存储在位置 8001H 及其之后。8000H 包含块的大小。执行此程序后,它将返回最小数并将其存储在位置 9000H 中。逻辑很简单,我们正在获取寄存器 B 中的第一个数字以开始工作。在每次迭代中,我们都从内存中获取数字并将其存储到寄存器 A 中。... 阅读更多
1K+ 阅读量
在此程序中,我们将了解如何使用 8085 在字节块中搜索元素。问题陈述编写 8085 汇编语言程序,使用线性搜索技术在数据块中搜索键值。讨论在此程序中,数据存储在位置 8002H 到 8007H 中。8000H 包含块的大小,8001H 保存要搜索的键值。执行此程序后,它将返回找到项目的地址并将该地址存储在位置 9000H 和 9001H 中。如果未找到该项目,它将返回 FFFFH。如果... 阅读更多