335程序控制指令内容摘要:
INT 21H。 最后显示’ H’ 24 用在循环程序中以确定是否要继续循环。 循环次数通常置于 CX中。 转移的目标应在 距离 本指令 128~ +127的范围之内 (短 跳转 )。 循环控制指令 不影响标志位。 25 (1) LOOP 格式: LOOP label 类比 串前缀 REP 操作: (CX)1→CX ; 若 (CX)≠0 ,则转至 label处执行 ; 否则退出循环 ,执行 LOOP后面的指令。 注: LOOP指令与下面的指令段等价: DEC CX JNZ label 26 (2)LOOPZ (LOOPE) 类比 串前缀 REPZ/E 格式: LOOPZ label 操作: (CX)1→CX ; 若 (CX)≠0∧ZF=1 ,则转至 label处执行 ; 否则退出循环 ,执行 LOOP后面的指令。 (3)LOOPNZ (LOOPNE) 类比 串前缀 REPNZ/NE 格式: LOOPNZ label 操作: (CX)1→CX ; 若 (CX)≠0∧ZF=0 ,则转至 label处执行 ; 否则退出循环 ,执行 LOOP后面的指令。 27 例 1:给 1A000H开始的 256个内存单元均减去 1,若发现某个单元减为 0则立即退出循环,其后的单元不再减 1。 程序段如下 :(逻辑地址为1A00:0H) MOV AX, 1A00H MOV DS, AX。 1A00H段 MOV DI, 1 MOV CX, 256 GOON: INC DI DEC BYTE PTR[DI] LOOPNZ GOON HLT 28 例 2: 在 8000H开始的长度为 1000字节的字符串中查找 ’S’,若找到,把其偏移地址记录在 ADDR中,否则ADDR单元置为 0FFFFH。 MOV DI, 8000H MOV CX, 1000 MOV AL, ’S’ MOV ADDR, 0FFFFH GOON: SCASB LOOPNZ GOON。 两条可并为 REPNZ SCASB JNZ DONE DEC DI MOV ADDR,DI DONE: HLT 29 3. 过程调用和返回指令 过程 (子程序 ) 一段具有特定功能的,供其它程序调用的公用程序。 特点 调用子程序时, IP(或 CS:IP)的内容被压入堆栈栈顶。 从子程序返回时,栈顶的内容又被弹出到 IP(或CS:IP)。 子程序执行结束后一般均要返回调用程序。 一次定义,多次调用; 可带参数调用,以完成不同的功能。 优点 程序代码短 ,结构清晰 ,便于编程、调试、修改和阅读。 两条相关指令 : 子程序调用指令 CALL 子程序返回指令 RET 30 断点 入口地址 用于调用一个子过程; 调用前须 保护断点 地址 (断点 =CALL的下一条指令地址 CS:IP);再跳转到子程序入口地址 (子程序入口地址 =子程序的第一条指令地址 CS:IP’或 CS’:IP’); 子过程执行结束后要返回原调用处继续执行原程序 —— 断点恢复 (RET指令 )。 调用指令 CALL与转移指令 JMP的比较 RET CALL CALL 子程序入口地址 = JMP 子程序入口地址 + PUSH CALL的下一条指令地址 CALL指令功能 : 31 主程序调用子程序的执行过程: 将调用指令的下一条指令的地址(断点)压入堆栈( CALL指令 ); 相当于乎 PUSH 下一条指令的地址 (IP或 CS:IP) 获取子过程的入口地址(子过程第 1条指令的偏移地址) ( CALL指令 ) ; 相当于乎 JMP入口地址 (CS:IP’或 CS’:IP’) 执行子过程,含相应参数的保存及恢复( 其它指令 ); 将断点偏移地址由堆栈弹出,返回原程序( RET指令 )。 相当于乎 POP IP或 CS:IP 32 一般格式: CALL sub。 sub为子程序的入口 根据子程序入口的寻址方式,子程序调用有 4类。 ① 段内 直接 调用 子程序的偏移地址直接由 CALL指令给出。 格式: CALL near_proc。 近 调用 CALL执行时,它首先将 IP内容压栈,然后把指令中给出的 位移量 加到 IP上得到新 IP’跳转到子程序入口地址。 注意: 汇编以后的调用地址是相对于 CALL的下一条指令的位移量。 例: CALL 0120H。 子程序偏移地址由指令给出 (1)调用指令 CALL 33 位移量由汇编程序在汇编时进行计算 ,如下例 : CS:0102 CALL 0120H。 3字节 CS:0105 …… 则 位移量 为 : 01200105H=001BH 于是 CALL 0120H的机器码为 E8 1B 00 CS:0102 E8 CS:0103 1B CALL 0120H CS:0104 00 CS:0105 …… 34 子程序的偏移地。335程序控制指令
相关推荐
执行前 20 10 POP BX指令执行示意图 (SP) 存储区 ( SS段) 执行后 (BX)=1020 (SP) (SP)+1 (SP)+2 BX 20 10 高地址 低地址 高地址 18 堆栈指令使用时应注意几点: ① 堆栈操作总是按 字 进行 ② 不能从栈顶弹出一个字给 CS ③ 堆栈指针为 SS:SP, SP永远指向栈顶 ④ SP自动进行增减量 ( 2, +2) 19 格式: XCHG
4个 中心对称图形的含义及特征 C C 7. (3分 )(2020潍坊 )下列标志中不是中心对称图形的是 ( ) 8. (3分 )(2020遵义 )观察下列图形 , 是中心对称图形的是 ( ) 9. (3分 )(2020白银 )下列图形中 , 是轴对称图形又是中心对称图 形的是 ( ) 判断中心对称图形 C C D 10. (7分 )如图 , 已知 O是正方形对角线 AC的中点 , M是 OC上
kjP B样条曲线的deBoor算法的几何意义清华大学 计算机图形学 节点插入算法 • 通过插入节点可以进一步改善 B样条曲线的局部性质 , 提高 B样条曲线的形状控制的灵活性 , 可以实现对曲线的分割等。 – 插入一个节点 在定义域某个节点区间 内插入一个节点 t,得到新的节点矢量: 重新编号成为 1, ii tt 1 11 21 111101 ,, 1 kniii
制是由 OS内核实现的。 OS内核 : 通常将一些与硬件紧密相关的模块(中断处理程序),各种常用设备的驱动程序,以及运行频率较高的模块(时钟管理、进程调度)都安排在紧靠硬件的软件层次中,使它们常驻内存,以便提高 OS的运行效率,并对它们加以特殊的保护。 我们把这一部分称为 OS内核。 OS内核的功能 一 支撑功能 :中断处理、时钟管理、原语操作 :中断处理是内核最基本的功能。
桥怎么突然就塌了呢。 村民:灰浆黏合石块格 外脆弱,据村民说,三 个大桥墩断裂成几节, 塌落下来的桥面物质, 除了石块就是干灰浆。 那些灰浆用手一捏都碎成粉了,怎么会坚固。 另外,桥梁并没有埋设钢筋。 九、安全原则 从以上两个例子来看,大家认为,做设计活动还要遵守什么原则。 讨论: 总结:技术设计的一般原则 一、创新原则 二、实用原则 三、经济原则 四、美观原则 五、道德原则 六、技术规范原则
16 182 yx273 yx4 yx11 yx0 yx12 yx152 yx.557 ),539,518( 152273 小值取到最的交点和直线经过直线zyxyxzyx复习引入 y x O 2 2 4 8 8 18 28 16 182 yx273 yx4 yx11 yx0 yx12 yx152 yx.)539