热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

微机计算机原理第六版第三章,微机计算机原理与应用课件第3章.ppt

微机计算机原理与应用课件-第3章程序如下:DATASEGMENTADDRDWX1,X2RESULTDWDATAENDSCODESEGMENTASSUMECS:CODE

微机计算机原理与应用课件-第3章

程序如下: DATA SEGMENT ADDR DW X1, X2 RESULT DW DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX MOV AX, ADDR ADD AX, ADDR+2 MOV RESULT, AX MOV AH, 4CH INT 21H CODE ENDS END START 当X1=1C84H, Y=2F5BH时,运行结果为: X1=1C84H, X2=2F5BH RESULTS=4BDFH 2.分支程序 计算机可根据不同条件进行逻辑判断,从而选择不同的程序流向。程序的流向是由CS和IP(EIP)值决定的,当程序的转移仅在同一段内进行时,只需修改偏移地址IP(EIP)的值;如果程序的转移是在不同段之间进行的,则段基址CS和偏移地址IP(EIP)值均需要修改。 1.分支程序的结构形式 分支程序结构有两种形式:双分支结构和多分支结构。 (1)双分支结构 双分支结构的程序流程如图 这种结构根据条件满足或不满足可分别执行 两种分支程序段。条件满足时执行分支程序 段2,条件不满足时则执行分支程序段1。 (2)多分支结构 多分支结构的程序流程如图所示。   多分支结构可以有多个分支,适用于有多种条件的情况下,根据不同的条件进行不同的处理。多分支结构也称为CASE结构。 无论是双分支结构还是多分支结构,其共同特点是:在某一种确定的条件下,只能执行一个分支程序段,而程序的分支要靠条件转移指令来实现。 2.分支程序设计 分支程序设计要领如下。 ① 首先根据处理的问题用比较、测试、算术运算、逻辑运算等方式,使标志寄存器产生相应的标志位。例如,比较两个单元地址的高低、两个数的大小,测试某个数据是正还是负,测试数据的某位是“0”还是“1”等,将处理的结果反映在标志寄存器的CF, ZF, SF, DF和OF位上。   ② 根据转移条件选择适当的转移指令。通常一条条件转移指令只能产生两路分支,因此要产生 n路分支需n-1条条件转移指令。   ③ 各分支之间不能产生干扰,如果产生干扰,可用无条件转移语句进行隔离。 【例】在以ADDR为首地址的内存单元中,存放着两个字节类型的无符号数x1和x2,比较这两个数的大 小,并将大数存放在内存RESULT单元中。 解题思路:比较两个无符号数的大小,可用CMP指令进行,并利用借位标志CF来判断大小。程序流程如图所示。 程序如下。 DATA SEGMENT ADDR DB X1, X2 RESULT DB DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS, AX 若X1=0FFH, X2=3BH,则运行结果为: X1=0FFH, X2=3BH RESULT: FFH MOV AL, ADDR ; AX←X1 CMP AL, ADDR+1 ; X1-X2 JNC LOOP1 ; 若X1≥X2→LOOP1 MOV AL, ADDR+1 ; 若X1<X2, AL←X2 LOOP1: MOV RESULT, AL ; 将大数存入RESULT单元中 MOV AH, 4CH INT 21H CODE ENDS END START 假设任意给定x值,存放在内存RS1单元中,求出函数y的值,存放在内存RS2单元中。程序流程如图所示。 程序如下 DATA SEGMENT RS1 DB X ; 存放自变量X RS2 DB ; 函数Y值的存储单元 DATA ENDS CODE SEGMENT ASSUME CS: CODE, DS: DATA START: MOV AX, DATA MOV DS,



推荐阅读
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
  • day04_流程控制
    流程控制在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说,程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要 ... [详细]
  • Python循环语句代码逐行详解:while、for、break和continue
    来源:大数据DT本文约3200字,建议阅读9分钟循环语句是指重复执行同一段代码块,通常用于遍历集合或者累加计算。Python中的循环语句有 ... [详细]
  • 本文由编程笔记#小编为大家整理,主要介绍了logistic回归(线性和非线性)相关的知识,包括线性logistic回归的代码和数据集的分布情况。希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了一个在线急等问题解决方法,即如何统计数据库中某个字段下的所有数据,并将结果显示在文本框里。作者提到了自己是一个菜鸟,希望能够得到帮助。作者使用的是ACCESS数据库,并且给出了一个例子,希望得到的结果是560。作者还提到自己已经尝试了使用"select sum(字段2) from 表名"的语句,得到的结果是650,但不知道如何得到560。希望能够得到解决方案。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 本文讨论了如何使用IF函数从基于有限输入列表的有限输出列表中获取输出,并提出了是否有更快/更有效的执行代码的方法。作者希望了解是否有办法缩短代码,并从自我开发的角度来看是否有更好的方法。提供的代码可以按原样工作,但作者想知道是否有更好的方法来执行这样的任务。 ... [详细]
  • SpringMVC接收请求参数的方式总结
    本文总结了在SpringMVC开发中处理控制器参数的各种方式,包括处理使用@RequestParam注解的参数、MultipartFile类型参数和Simple类型参数的RequestParamMethodArgumentResolver,处理@RequestBody注解的参数的RequestResponseBodyMethodProcessor,以及PathVariableMapMethodArgumentResol等子类。 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • 本文介绍了使用Spark实现低配版高斯朴素贝叶斯模型的原因和原理。随着数据量的增大,单机上运行高斯朴素贝叶斯模型会变得很慢,因此考虑使用Spark来加速运行。然而,Spark的MLlib并没有实现高斯朴素贝叶斯模型,因此需要自己动手实现。文章还介绍了朴素贝叶斯的原理和公式,并对具有多个特征和类别的模型进行了讨论。最后,作者总结了实现低配版高斯朴素贝叶斯模型的步骤。 ... [详细]
  • 使用圣杯布局模式实现网站首页的内容布局
    本文介绍了使用圣杯布局模式实现网站首页的内容布局的方法,包括HTML部分代码和实例。同时还提供了公司新闻、最新产品、关于我们、联系我们等页面的布局示例。商品展示区包括了车里子和农家生态土鸡蛋等产品的价格信息。 ... [详细]
  • 本文介绍了2015年九月八日的js学习总结及相关知识点,包括参考书《javaScript Dom编程的艺术》、js简史、Dom、DHTML、解释型程序设计和编译型程序设计等内容。同时还提到了最佳实践是将标签放到HTML文档的最后,并且对语句和注释的使用进行了说明。 ... [详细]
  • CCNP交换实验(VLAN/VTP/DHCP)
    实验要求:本拓扑按典型中小企业网分支-总部-分支结构模拟,总部核心路由为C3550,外联网通过OSPF协议,内联网通过VTP ... [详细]
  • switch分支结构一、程序运行流程的分类1、顺序结构:根据程序顺序依次执行。2、分支结构:根据判断决定程序的执行顺序。3、循环结构。分支结构三要素&# ... [详细]
author-avatar
林亚培_724
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有