转移指令检测题9

补全编程,利用loop指令,实现在内存2000H段中查找第一个值为0的字节,找到后,将它的偏移地址存储在DX中

assume cs:code

code segment

start:mov ax,2000h

mov ds,ax

mov bx,0

s: mov cl,[bx]

mov ch,0

inc cx            ;此处为要填写的空行

inc bx

loop s

ok:dec bx              ;dec指令的功能和inc相反,dec bx进行的操作为:(bx)=(bx)-1

mov dx,bx

mov ax,4c00h

int 21h

code ends

end start

还有一个实验记录如下:

assume cs:codesg

codesg segment

mov ax,4c00h

int 21h

start:   mov ax,0

s:   nop

nop

mov di,offset s

mov si,offset s2

mov ax,cs:[si]

mov cs:[di],ax

s0:jmp short s

s1:mov ax,0

int 21h

mov ax,0

s2:jmp short s1

nop

codesg ends

end start

单步调试结果如下:

对应的机器码如下:

上面是两张图,中间有重

程序在跳到S处时,执行完指令后就跳到第一条指令去了。原因是jmp short s1对应的机器码中给出的位移值,而不是目的地址,从图中可以看出是F6,等于-10,即当前指令执行完成后IP+2然后-10,回到S1标号处,当把这条指令放到start的下一条语句时,它对应的机器指令指明,IP也应该-10,上移10个位置,所以就到了第一条指令mov ax 4c00h,而不是跳到s1处

时间: 2024-09-13 16:14:55

转移指令检测题9的相关文章

SQL数据库基础知识-巩固篇<一>

SQL数据库基础知识-巩固篇<一>... 首先展示两款我个人很喜欢的数据库-专用于平时个人SQL技术的练习<特点:体积小,好安装和好卸载,功能完全够用了> MySQL-57 DataBase MS-SQLServer-2000 DataBase SQL的含义:结构化查询语言(Structured Query Language)简称SQL 作用:SQL(Structured Query Language,结构化查询语言)是一种用于操作数据库的语言. 结构化查询语言包含6个部分:一:数

汇编语言基本概念汇总

汇编语言应该是我们现在学的最"低级"的语言了,因为现在不会再有人去学机器语言了.而汇编语言还在一些硬件或者嵌入式设备上使用并开发着.以下资料是为了大学的汇编考试整理的资料,现在与大家分享,希望能给大家提供帮助. 汇编语言程序设计汇总 计算机主要由运算器.控制器.存储器和输入输出设备五大部件构成. 字长word是指微处理器内部一次可以并行处理二进制代码的位数,它与微处理器内部寄存器以及CPU内部数据总线宽度是一致的,字长越长,所表示的数据精度就越高. 内存是由若干个存储单元组成,每个单元

记第一次web前端校招笔试

是的,我今晚跑到隔壁学校参加某电商公司的宣讲会+现场笔试.只有俩字可以形容:苦笑! 在寝室复习了下以前学习的关于前端方面的知识,重点是JavaScript,javaweb开发技术(jsp+servlet+javabean),随便看了下html+css(毕竟这方面比较有自信),然后打印好简历就兴冲冲地和同学去了. 提前十几分钟到,到的时候整个会场大概一半坐满(但是不一会儿就人都坐不下了,后排挤了一排),我们特意挑了个靠前的位置,时间一到,一位副总裁兼任人力的气质美女开始介绍公司,半个小时后开始一系

【求职应聘】岗位职责与要求

  移动开发工程师 岗位职责: 1.参与移动应用的详细设计: 2.参与移动应用的数据库设计: 3.依据公司质量体系规范,按照设计文档完成软件代码编写工作: 4.完成分配模块的开发工作,以满足移动应用功能和非功能的要求: 5.依据公司质量体系要求,对所负责模块进行单元测试: 6.配合测试团队,修复系统缺陷,完善系统功能: 7.负责解决项目中的关键问题和技术难题: 职位要求: 1.本科及以上,计算机.软件工程及相关专业: 2.三年以上移动应用开发工作经验: 3.熟悉iOS.Android.HTML5

201671010111 2016-2017-2《Java程序设计》再看java

本周已经是学习Java的第二周了,课程进度已到第三章.那么我们对Java有了一个大概的认识.其语法近似于C语言,却又异于C语言.类似于C语言,却又有很多优越于C语言的地方.终于明白了课本第一章说java是一个优秀程序员的首选语言,作为一个优秀的程序员,使用java无疑是一个好的选择. 老师开始实行反转课堂教学法,一节理论课分为前一小时和后一小时.前一小时的时间用来做检测题,后一小时的时间则讲解这些题目.题目是老师涵盖了前三章的知识出的,检测到了前三章所有的重要知识点.一看到这些题目,内心就有一种

201671010111 2016-2017-2 &lt;&lt; JAVA程序设计&gt;&gt;学习总结

老师的反转课堂是一边学习后面新知识点的同时复习前面旧知识的模式,因为java前三章的知识基本是对C语言的一个复习,所以老师上周直接进行检测.但是今天老师没有直接考试而是先讲解第三章遗留的一些问题,之后再带着我们通过做题去掌握第四章的知识点. 第三章检测题中有这样一个题目: 21.如果有以下的程序代码:(字符串,数组) String[] strs = {"Java", "Java", "Java", "Java", "

Java中的monitor机制

monitor概念 管程,监视器.在操作系统中,存在着semaphore和mutex,即信号量和互斥量,使用基本的mutex进行开发时,需要小心的使用mutex的down和up操作,否则容易引发死锁问题.为了更好的编写并发程序,在mutex和semaphore基础上,提出了更高层次的同步原语,实际上,monitor属于编程语言的范畴,C语言不支持monitor,而java支持monitor机制. 一个重要特点是,在同一时间,只有一个线程/进程能进入monitor所定义的临界区,这使得monito

2019.10.26模拟赛

T1 序列 给定一长度为\(n\)的序列\(s\),定义其健美值为:\[\sum\limits_{i=1}^{n}|s_i - i|\]因为 zzq 喜欢健美,所以 zzq 希望减小\(s\)的健美值,以衬托 zzq 的健美.为了达到 zzq 的目的,zzq 希望你对序列进行旋转操作,一次旋转操作可以使序列中的所有元素前移一位,并使\(s_1\)移动到\(s_n\). 可以进行任意次旋转操作,zzq 希望旋转后的健美值最小,请找出这个最小值. SOV 智商检测题 我们发现对于每个数,移动每一次会

检测比较结果的条件转移指令

因为cmp指令可以同时进行两种比较,无符号数比较和有符号数比较,所以根据cmp指令的比较结果进行转移的指令也分为两种,即根据无符号数的比较结果进行转移的条件转移指令(它们检测zf.cf的值)和根据有符号数的比较结果进行转移的条件转移指令(它们检测sf.of和zf的值). 下面是常用的根据无符号数的比较结果进行转移的条件转移指令. 指令                     含义                    检测的相关标志位 je                    等于则转移