1K+ 次浏览
在这里,我们将学习如何在 8085 中执行二分查找。问题陈述:编写 8085 汇编语言程序,对存储在 F110 到 F119 位置的一组数据执行二分查找。键位于 F100。讨论要执行二分查找,数组必须已排序。我们将下限放入 L,上限放入 H。数组位置存储在 DE 寄存器对中。中间值使用 (H + L)/2 计算。为了执行此除法,我们只需将其向右移动一次。然后将中间值放入 D 并检查项目…… 阅读更多
2K+ 次浏览
在这个程序中,我们将学习如何找到所有偶数的和。问题陈述编写 8085 汇编语言程序以查找存储在数组中的所有偶数的和。数组的大小存储在位置 F100;数字从内存位置 F101 开始存储。结果将存储在 F150。讨论要检查数字是奇数还是偶数,我们可以进行 AND 运算。如果一个数字是奇数,那么它将包含 1 作为最低有效位 (LSb),对于偶数,LSb 将为 0。因此,如果 AND 运算后的结果为 0,则它是…… 阅读更多
381 次浏览
在这个程序中,我们将学习如何在一个元素数组中找到只出现一次的数字。问题陈述编写 8085 汇编语言程序以查找在一个元素数组中只出现一次的数字。数组的大小存储在位置 F100;数字从内存位置 F101 开始存储。结果将存储在 F150。讨论这个问题背后的逻辑很简单。尽管它在某些情况下可能会发现一些错误的结果。如果只有一个数字只出现一次,而其余数字…… 阅读更多
3K+ 次浏览
在这里,我们将学习如何使用 8085 除以两个 16 位数。问题陈述编写 8085 汇编语言程序以除以两个 16 位数。讨论8085 没有除法运算。要执行除法,我们必须使用重复减法。要执行 16 位除法,我们必须这样做,但对于寄存器对也是如此。由于寄存器对用于保存 16 位数据。除数存储在位置 FC00 和 FC01,被除数存储在 FC02 和 FC03。除法后,商将存储在 FC04 和 FC05,余数将存储在 FC06 和 FC07。输入地址数据 FC00 8A FC01 5C FC02 5A FC03 1D 流程图 程序地址十六进制代码标签指令注释 F000 01,… 阅读更多
在这个程序中,我们将学习如何使用 8085 检查一个数字是否为素数。问题陈述编写 8085 汇编语言程序以检查给定数字是否为素数。讨论这里的方法有点不同。我们实际上是在计算唯一因子的数量。对于素数,因子只有两个。1 和数字本身。因此,如果结果是 02H,则它是素数,否则不是素数。由于没有除法运算,我们必须通过重复减法来执行除法。输入地址数据 F100 07 地址数据 F100 FF 地址数据 F100 2F 流程图 程序地址十六进制代码标签指令注释 F000 21, 00, F1 LXI H, F100 指向 F100 以获取… 阅读更多
在这个程序中,我们将学习如何计算一组元素中奇数的数量。问题陈述编写 8085 汇编语言程序以计算数据块中奇数的数量,其中块大小为 10D。该块从位置 8000H 开始。讨论奇偶校验非常简单。我们可以通过检查最低有效位 (LSb) 来确定一个数字是奇数还是偶数。当 LSb 为 1 时,该数字为奇数,否则为偶数。在这个程序中,我们从内存中取出一个数字,然后用 01H 与其进行 AND 运算。如果结果非零,… 阅读更多
439 次浏览
在本节中,我们将使用 8085 计算小于 0AH 的元素。问题陈述有一些元素的数组。编写 8085 汇编语言程序以计算小于 0AH 的元素数量。讨论该数组从位置 F051H 开始放置。F050 保持数组的大小。逻辑很简单。首先,我们将数组大小放入 B 寄存器。C 寄存器将计算小于 0AH 的元素数量。我们将逐个从内存中取出数字,然后将其与 0A 比较。如果 CY 标志被设置,则… 阅读更多
567 次浏览
在这里,我们将学习如何检查数字的两个半字节是否相同。问题陈述编写 8085 汇编语言程序以检查高半字节和低半字节是否相同。讨论要检查半字节,我们必须首先进行掩码。因此,我们需要掩盖低半字节和高半字节并将它们存储到不同的寄存器中。高半字节将向右移动四位以使其成为低半字节。然后我们可以检查两者是否相同。如果它们相同,则在 F150 位置存储 00,否则在 F150 位置存储 FF。输入地址数据 F050 FE 地址数据 F050 AA 流程… 阅读更多
现在让我们来看一个 Intel 8085 微处理器的程序。在这个程序中,我们将学习如何生成脉冲波形。问题陈述:编写 8085 汇编语言程序以生成连续的方波。讨论要使用 8085 生成方波,我们将连续旋转 10101010 (AAH)。我们必须发送 D0 作为输出。我们将使用 01H 掩盖累加器的內容。如果它是 0,则输出将为 0,如果它是 1,则输出将为 1,因此将生成脉冲。输入在这种情况下没有输入流程图程序地址十六进制代码标签指令注释 8000 16, AA MVI D, AAH 将 10101010 加载到 D 8002 7A ROTATE MOV A, D 将 D 加载到 A 8003 07 RLCRotate A … 阅读更多
现在让我们来看一个 Intel 8085 微处理器的程序。在这个程序中,我们将学习如何模拟十六进制计数器。问题陈述编写 8085 汇编语言程序以模拟十六进制计数器。讨论 8085 中的十六进制计数器类似于二进制计数器。有两个不同的部分。主要的计数部分和延迟部分。我们必须定义一个延迟子程序以在计数期间每个数字之间生成延迟。我们假设我们有一些通过 IO 端口连接的外部显示器,它将以十六进制形式显示结果。输入这里我们没有提供任何输入。流程图程序地址十六进制代码标签指令注释 F000 06, FF MVI… 阅读更多