第2次作业情况

发布 2023-05-18 14:56:28 阅读 3339

第2此作业情况汇总。

表扬的同学:1班:康旭;5班:高阳;,张妙,郭德,刘美洋;6班的林诩凯。

出错:sal al,1(ax=00bbh)结果为al=76h,而不是f6h。

解答:1)算术左移无法保证符号位不发生改变,溢出了。

2)注意:al作为独立使用的寄存器,它的左移不影响ah寄存器。

3)逻辑移位,高4位已补0,无需通过and al 0fh实现清0。不宜采用算术移位。

问题:语句第2行,因不满足条件而未执行。但done语句标号后的指令在程序的最后仍会执行。结果为7676h。

3.67 问题较多。

试写出一个程序段,用cl中的数据除bl中的数据,然后将结果乘2,最后的结果是存入dx寄存器中的16位数。

问题:mov ax,bl(或mov ax,cl)

1)cl是除数,有的同学把bl当成了除数。

2)数据类型不匹配:mov ax, bl(被除数默认在ax中)。

3)cbw的误用。

4)乘数不能是立即数。

5)将所得的商直接算术(逻辑)左移1位,因商保存在al中。

mov al,bl

mov ah,0 ;或 and ax,00ffh 或:cbw(有符号除法)

div cl(或idiv cl ;和cbw连用。

mov cl,2 ;sal ax,1(×)因ah中放的是余数)

mul cl (或:mov ah,0 shl ax,1或imul cl

mov dx,ax

3.79 用串操作指令设计实现如下功能的程序段,先将100个数从6180h处移到2000h处;再从中检索出等于al中字符的单元,并将此单元值转换成空格符。

1)完成100个数的传送问题不大,只是部分同学忘了用cld(或std)指令指定串操作的方向。

2)第2问问题较多:① 题目的意思是修改目标串;因此,不应对[si]进行操作;scasb指令是对[di]单元操作的。

目标串中等于al中字符的单元,可能不止一个,因此,简单地用 repne scasb不合适,碰到第一个符合要求的字符,就不再检索了。

串传送结束后,si和di均已改变,若直接按现行[di]检索,是不对的。

有同学直接用lea di,2000h获取目标串的首地址,是不可以的。2000h为立即数。实际上,在目前版本的汇编程序中,lea di,[2000h]都被认为是不合法的。

参考程序段如下:

cldmov cx,100

mov si,6180h

mov di,2000h

rep movsb

dec di

std ;也可直接用mov di,2000h

mov cx,100

scan:scasb

jnz next

inc di

mov byte ptr [di],‘或20h)

dec di

next:loop scan

mov ah,4ch ;终止程序,返回dos

int 21h

第2次作业

1.操作系统将os划分为若干层次,再将os的不同功能分别设置在不同的层次中。通常将一些与硬件紧密相关 各种常用设备的驱动程序以及频率较高的模块 如始终管理 进程调度和许多模块所公用的一些基本操作 都安排在紧靠硬件的软件层次中,将它们常驻内存,即os内核。支撑功能 中断处理 时钟管理 原语操作。资源管...

作业第2次

1 测试需求管理不包含 a 产品需求转换为测试需求 b 通过需求树定义被测软件所有需求 c 自动生成统计图表 d 定义测试目标和策略。2 测试需求管理包含 a 定义测试目标和策略 b 确定每个功能点的测试方法 c 自动生成统计图表 d 运行自动化测试。3 缺陷跟踪不包含 a 确定每个功能点的测试方法...

第2次作业

第二次作业。2015年8月22日。同学们 你们好!完成此次作业首先需要大家对教材第4至第6章内容进行学习,之后才能作以下作业。一 简答题。1 简述收入分配过程的基本内容及其核算的账户组成。2 结合收入初次分配的各个流量解释收入分配账户中 收入形成账户 和 原始收入分配账户 之间的关系。3 根据 年国...