东华大学微机实验报告答案(软件)
东华大学数据结构上机实验报告
东华大学信息科学与技术学院实验报告实验名称:线性表的基本操作指导教师:学生姓名:学生学号:实验日期:2012/11一、实验目的1、熟悉C或VC++语言上机环境。
2、会定义线性表的顺序存储结构和链式存储结构。
3、熟悉顺序表和单链表的一些基本操作和应用。
4、加深对线性表的理解,逐步培养解决实际问题的编程能力。
二、实验环境运行C或VC++的微机。
三、实验内容:分别使用顺序表和单链表存储结构实现以下操作:1.建立线性表L={12,13,21,24,28,31,42,77};2.在第5个元素之前插入26;3.删除第5个元素28;4.查找28。
四、实验设计思路及算法流程(一)使用顺序表实现操作:建立顺序表,完成顺序表的基本操作:初始化、插入、删除、输出、查找元素、判线性表是否为空;问题分析:利用顺序表,设计一组输入数据,能够对顺序表进行如下操作:创建一个新的顺序表,实现动态空间分配的初始化;已给定的值插入到指定位置和删除指定位置的值,形成有序顺序表;按值查找,根据给定数据元素的值,查找该元素的位置,对查找结果进行返回;实现顺序表的各个元素的输出;“初始化算法”的操作结果:构造一个空的顺序线性表,对顺序表的空间进行动态管理,实现动态分配、回收和增加存储空间;“位置插入算法”的初始条件:顺序线性表L已存在,给定的元素位置为i,且1≤i≤ListLength(L)+1 ;其操作结果:在L中第i个位置之前插入新的数据元素e,L的长度加1;“位置删除算法”的初始条件:顺序线性表L已存在,1≤i≤ListLength(L) ;其操作结果:删除L的第i个数据元素,并用e返回其值,L的长度减1 ;“输出算法”的初始条件:顺序线性表L已存在;其操作结果:依次对L的每个数据元素进行输出;“按值查找算法”初始条件:顺序线性表L已存在,元素值为e;其操作结果:返回L 中数据元素值为e的元素位置;线性表的顺序存储结构的定义及其基本操作的参考程序(顺序表)文件一:pubuse. h 是公共使用的常量定义和系统函数调用声明。
东华大学2018年软件测试(姚砺)试题带答案
选择题部分㈠单项选择题(1) 以下不属于软件测试的作用的是:A) 可以减少软件系统在运行环境中的风险B) 可以提高软件系统的质量C) 可能是为了满足合同或法律法规的要求D) 可以用于评价开发团队的能力(2) 在判断测试是否足够时,下列哪些方面是不需要考虑的?A) 风险B) 项目在时间上的限制C) 项目在预算上的限制D) 投入的测试人员的数量(3) 以下哪个不是软件测试的目标?A) 发现缺陷B) 增加对质量的信心C) 为决策提供信息D) 改进测试流程(4) 以下哪些是测试出口准则A) 代码测试覆盖率B) 客户需求的实现C) 功能测试覆盖率D) 缺陷发现率E) 以上都是(5) 软件测试基本过程有哪些主要活动组成?(1) 计划和控制(2) 分析和设计(3) 实现和执行(4) 评估出口准则和报告(5) 测试结束活动(A) 1,3,5 (B) 1,2,3 (C) 2,3,4,5 (D) 1,2,3,4,5(6) 下面哪个通常不作为组件/单元测试的测试依据?(A) 组件需求说明(B) 详细设计文档(C) 代码(D) 软件和系统设计文档(7)下面关于等价类和的说法错误的是?(A) 等价类划分可以分为两种类型的数据:有效数据和无效数据。
(B) 等价类划分也可以基于输出、内部值、时间相关的值以及接口参数等进行(C) 等价类技术属于基于规格说明的测试技术(D) 等价类划分主要应用于系统测试(8)以下哪个不属于良好的测试应该具有的特点?(A) 每个开发活动都有相对应的测试活动(B) 每个测试级别都有其特有的测试目标(C) 对于每个测试级别,需要在相应的开发活动过程中进行相应的测试分析和设计(D) 在开发生命周期中,测试员应该在文档正式发布后再参与文档的评审(9)在评审过程中,主持人的主要职责是?(A) 决定是否需要进行评审(B) 主持文档或文档集的评审活动(C) 标识和描述被评审产品存在的问题(如缺陷)(D) 记录所有的事件、问题(10)下面关于测试设计技术的描述错误的是?(A)使用测试设计技术的目的是为了识别测试条件和开发测试用例(B)黑盒测试设计技术是依据分析测试基础文档来选择测试条件、测试用例或测试数据的技术。
东华大学微机系统及应用习题参考答案(第一章)
微机系统及应用习题参考答案第一章计算机基础知识1-3 写出下列机器数的真值(1)01101110 真值=+1101110B=+110(2)10001101 真值=-0001101B=-13(3)01011101 真值=+1011001B=+89(4)1100110 真值=-1001110B=-781-4 写出下列二进制数据的原码、反码和补码(设字长为8位)(1)+010111原码=反码=补码=00010111(2)+101011原码=反码=反码=00101011(3)-101000原码=10101000 反码=11010111 补码=11011000 (4)-111111原码=10111111 反码=11000000 补码=110000011-5 写出等效的十进制数值:(1)[X]原=[X]反=[X]补= 0001110 真值X=+14(2)[X]原=11111111 真值X= -127[X]反= 11111111 真值X= -0[X]补= 11111111 真值X= -1(3)[X]原= 10000000 真值X=-0[X]反= 10000000 真值X=-127[X]补= 10000000 真值X=-128(4)[X]原=10000001 真值X= -1[X]反= 10000001 真值X=-126[X]补= 10000001 真值X= -1271-6 计算下列各式(1)00020200+00100001= 00110101(2)00010100+00100001=00110101(3)11101100+00100001=00001101(4)11101100+ 11011111=11001011(5)00010100+10111110=11010010(6)11101100+ 11111100=111010001-7用补码来完成下列计算,并判断有无溢出产生(字长8位)(1)85+6001010101+ 0011110010010001CS=0 CP=1 CS XOR CP=1 所以产生溢出OV=1(2)-85+60+0011110011100111CS=0 CP=0 CS XOR CP=0 无溢出(3)85-6001010101+110001001 00011001CS=1 CP=1 CS XOR CP=0 无溢出(4)-85-6010101011+ 110001001 01101111CS=1 CP=0 CS XOR CP=1 产生溢出1-8补码加法判断有无溢出(1)01001010+01100001 = 10101011 Cp=1,Cs=0 有溢出(2)01101100 —01010110=01101100+10101010=00010110Cp=1,Cs=1 无溢出1-9 转换BCD码(1)30D = (00110000)BCD (2)127D = (000100100111) BCD (3)00100010B=34D=(00110100) BCD (4)74H=116D=(000100010110) BCD 1-10 ASCⅡ码表示的字符41H =’A’ ; 71H=’r’ , 65H=’e’ , 20H=SP1-11 字符的ASCⅡ码‘9’= 39H , ‘*’= 2AH , ‘=’ = 3DH , ‘$’ = 24H , ‘ !’ = 21H1-12 加偶校验的字符的ASCⅡ码‘9’: 39H ; ‘*’:AAH ; ‘=’ : BDH‘$’ : 2DH ; ‘!’ : 21H1-13 补码表示的定点小数时,数值范围为-1 ——+(1- 2-9)补码表示的定点整数时,数值范围为-29 ——+ (—29–1)—补码表示阶码,原码表示尾数时,数值范围为-27 (1-2-5) ——+27 (1-2-5) 1-14试将下列数表示成浮点的规格化数。
东华大学微机实验原理实验报告
实验一基本程序编程和程序调试一、实验目的1、掌握数码转换等基本程序设计的技巧和方法。
2、熟悉DEBUG命令。
3、学会和掌握用DEBUG调试程序的方法。
二、实验设备PC机一台,装有DOS基本系统三、实验内容及步骤用DEBUG建立、汇编和运行调试程序的操作。
DEBUG是DOS系统支持的用于汇编语言源程序调试的系统软件。
它共有19条命令完成相应的功能,命令及其格式可参阅附录一。
(一)DEBUG操作练习1)实验调试程序程序的功能是从3500H内存单元开始建立0-15共16个数据。
程序如下:地址(H)机器码(H)助记符2000BF0035MOV DI,35002003B91000MOV CX,00102006B80000MOV AX,000020099E SAHF200A8805MOV BYTE[DI],AL200C47INC DI200D40INC AX200E27DAA200F E2F9LOOP 200A2011F4HLT2)实验步骤:(1)输入与修改①启动DOS,在DOS提示符下输入D E B U G后回车,屏幕立即显示DEBUG提示符“—”,表明已进入DEBUG状态,可以执行DEBUG的各种命令。
②用DEBUG中的汇编命令“A 地址”将程序建立在内存单元中。
在提示符“—”下键入:“A 2000 ”此时显示器上将会显示程序的段地址CS和偏移地址IP,你就可以输入以上的程序了。
即显示169C :2000 键入MOV DI,3500169C:2003 MOV CX,0010169C:2011HLT:::③用反汇编命令“U 地址”检查程序在提示符“—”下,键入“U 2000↵”,将从2000内存单元开始的内容反汇编,屏幕上显示169C:2000 BF0035 MOV DI,3500169C:2003 B91000 MOV CX,0010169C:2006 B8000 MOV AX,0000::::::169C:2011 F4 HLT当发现程序有错时,可用汇编命令“A 地址”进行修改,如要修改200A单元中的指令,则键入“A 200A↵”,屏幕显示169C:200A ,然后再键入MOV BYTE[DI],AL↵,就把错误的程序改正了。
东华大学微机上机三道解答题程序(C语言)
截距: b=%f\n\n\n",m,b);
义慧
迭ቤተ መጻሕፍቲ ባይዱ求根:
#include<stdio.h> #include<math.h> int main() { int m=0,n; float i,A,B,x,x1,y1,y2,f,fx,a,b,c,d,s,eps,f1,f2; printf("请输入精度 eps:\n"); scanf("%f",&eps); printf("请依次输入 a,b,c,d 的值\n"); scanf("%f,%f,%f,%f",&a,&b,&c,&d); printf("输入区间等分数:n\n"); scanf("%d",&n); printf("输入区间初始值 A=、B=:\n"); scanf("%f,%f",&A,&B); for(i=1;i<=n;i++) { y1=A+(i-1)/n*(B-A); y2=A+i/n*(B-A); f1=a*y1*y1*y1+b*y1*y1+c*y1+d; f2=a*y2*y2*y2+b*y2*y2+c*y2+d; if(f1*f2<=0) { x=(y1+y2)/2; loop:f=a*x*x*x+b*x*x+c*x+d; fx=3*a*x*x+2*b*x+c; x1=x-f/fx; m=m+1; s=(x-x1)/x; if(fabs(s)>eps) { x=x1; goto loop; } else { printf("x=%f\n",x1); printf("m=%d\n",m); } } } return 0; }
东华大学微机实验报告答案(软件)
目录实验一DEBUG的启动及其基本命令的使用实验二内存操作数及寻址方法实验三汇编语言程序的调试与运行实验四查表程序设计实验五系统功能调用实验六分支程序设计实验七循环程序设计实验八子程序设计实验九综合程序设计实验心得体会参考文献实验一 DEBUG的启动及其基本命令的使用源程序:(指导书中给出)DA TA SEGMENTSTRING1 DB 'Move the cursor backward'STRING2 DB 'Move the cursor backward'MESS1 DB 'Match.',13,10,'$'MESS2 DB 'No Match.',13,10,'$'DA TA ENDSSTACK SEGMENT STACKDB 40 DUP (?)STACK ENDSPROGNAM SEGMENTASSUME CS:PROGNAM,DS:DA TA,ES:DA TA,SS:STACKMAIN PROC FARSTART: PUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXLEA SI,STRING1LEA DI,STRING2CLDMOV CX,25REPZ CMPSBJZ MA TCHLEA DX,MESS2JMP SHORT DISPMATCH: LEA DX,MESS1DISP: MOV AH,09hINT 21HRETMAIN ENDPPROGNAM ENDSEND START运行结果:用DEBUG调试将输出字符串改为‘No Match’用E指令修改“backward”为“forward”再次用d命令查看修改结果。
用g命令运行程序实验二内存操作数及寻址方法1、(1)程序说明:设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。
东华大学微机系统及原理实验报告
微机系统及应用实验实验报告实验一DEBUG的启动及其基本命令的使用实验内容:6:设堆栈指针SP=2000H,AX=3000H,BX=5000H;请仿照例程的格式编一程序段将AX和BX的内容进行交换。
请用堆栈作为两寄存器交换内容的中间存储单元,用DEBUG调试程序进行汇编与调试。
写出在DEBUG状态下编写、运行步骤6所要求的程序过程(要求包含源程序)以及调试所中遇到的问题是如何解决的,并对调试过程中的问题进行分析,对执行结果进行分析。
程序清单:STACK SEGMENT STACKDB 2003H DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,SS:STACKSTART: MOV AX,STACKMOV SS,AXMOV SP,2000HMOV AX,3000HMOV BX,5000HPUSH AXMOV AX,BXPOP BXMOV AH,4CHINT 21HCODE ENDSEND START运行及调试:进入调试后,运行正常。
进行反汇编调试:通过追踪指令观察SP、AX、BX变化可知对SP、AX、BX赋值正确。
将AX入栈后用显示内存单元内容的命令D观察堆栈段中SP为1FFF,2000的内容[1FFF]=00 ,[2000]=30 说明已经AX=3000已经放入到堆栈段中。
结果可以看出:AX=5000,BX=3000结果完成正确!实验二内存操作数及寻址方法实验内容:1、设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。
请用堆栈作为两寄存器交换内容的中间存储单元,用字处理程序编辑程序,用masm.exe和link.exe对源程序进行汇编程和连接,用DEBUG 调试程序。
2、用masm和link 对以下程序进行汇编和连接,调试程序在DEBUG调试程序状态下进行。
用单步执行的方法,分析每条指令源地址的形成过程,当数据传送完毕时,AX中的内容是什么。
微机实验报告 东华
微机实验报告东华东华微机实验报告一、引言微机作为现代科技的重要组成部分,已经广泛应用于各个领域。
本次实验旨在通过对东华微机的实验,深入了解微机的结构和工作原理,提高我们对计算机系统的认识和理解。
二、实验目的1. 了解东华微机的硬件结构和主要组成部分;2. 掌握微机的工作原理和基本操作;3. 进一步理解微机的编程和应用。
三、实验内容1. 东华微机的硬件结构东华微机的硬件结构主要包括中央处理器(CPU)、内存、输入输出设备等。
其中,CPU是微机的核心部件,负责执行各种指令和控制微机的运行。
内存用于存储数据和程序,输入输出设备则用于与外部环境进行信息交互。
2. 微机的工作原理微机的工作原理是基于冯·诺依曼体系结构的,即将程序和数据存储在同一存储器中,并通过控制器和运算器来执行指令。
当微机启动时,CPU会从内存中读取指令,并按照指令的要求进行操作。
3. 微机的基本操作通过对东华微机的实验,我们可以学习到微机的基本操作。
包括启动和关机,输入和输出数据,以及运行程序等。
这些基本操作是我们日常使用微机时必须掌握的。
四、实验步骤1. 启动东华微机按下电源按钮,等待微机启动。
在启动过程中,我们可以观察到屏幕上显示的启动信息,以及听到微机发出的声音。
2. 输入数据通过键盘输入一组数据,例如数字或字母。
输入完成后,按下回车键确认。
3. 运行程序选择一个程序,并按下运行按钮。
在程序运行过程中,我们可以观察到屏幕上的变化,以及听到微机发出的声音。
4. 输出结果程序运行结束后,我们可以通过屏幕或打印机等输出设备查看程序的运行结果。
五、实验结果与分析通过对东华微机的实验,我们可以获得一些实验结果。
例如,输入的数据是否被正确接收,程序是否能够正常运行,以及输出结果是否符合预期等。
通过对实验结果的分析,我们可以判断微机的工作状态和性能。
六、实验总结通过本次实验,我们对东华微机的硬件结构和工作原理有了更深入的了解。
同时,我们也掌握了微机的基本操作和应用。
微机实验报告答案
《微机原理与接口技术》实验报告系部:指导教师:学号:姓名:实验一 8255A并行口实验A一、实验目的⑴掌握8255A和微机接口方法。
⑵掌握8255A的工作方式和编程原理。
二、实验内容用8255 PA作开关量输入口,PB作输出口。
三、程序框图四、实验电路五、实验程序;--------------8255A并行口实验(2) PA输入,PB输出-------------CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 32E0HPA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHH2: MOV DX,PCTLMOV AL,90HOUT DX,ALP2: MOV DX,PAIN AL,DXINC DXOUT DX,ALJMP P2CODE ENDSEND H2六、思考题1.该实验证明了8255A的什么特点?实验二 8255A并行口实验B一、实验目的掌握通过8255A并行口传输数据的方法,以控制发光二极管的亮与灭。
二、实验内容用8255作输出口,控制十二个发光二极管燃灭,模拟交通灯管理。
三、程序框图四、实验电路五、实验程序;----------------8255A并行口实验(3) 控制交通灯----------------CODE SEGMENTASSUME CS:CODE,DS:CODE,ES:CODEORG 32F0HPA EQU 0FFD8HPB EQU 0FFD9HPC EQU 0FFDAHPCTL EQU 0FFDBHH3: MOV AL,88HMOV DX,PCTLOUT DX,AL ;MOD:0,MOV DX,PAMOV AL,0B6HOUT DX,ALINC DXMOV AL,0DHCALL DELAY1 P30: MOV AL,75H MOV DX,PA OUT DX,AL INC DXMOV AL,0DH OUT DX,AL CALL DELAY1 CALL DELAY1 MOV CX,08H P31: MOV DX,PA MOV AL,0F3H OUT DX,AL INC DXMOV AL,0CH OUT DX,AL CALL DELAY2 MOV DX,PA MOV AL,0F7H OUT DX,AL INC DXMOV AL,0DH OUT DX,AL CALL DELAY2MOV DX,PA MOV AL,0AEH OUT DX,AL INC DXMOV AL,0BH OUT DX,AL CALL DELAY1 CALL DELAY1 MOV CX,08H P32: MOV DX,PA MOV AL,9EH OUT DX,AL INC DXMOV AL,07H OUT DX,AL CALL DELAY2 MOV DX,PA MOV AL,0BEH OUT DX,AL INC DXMOV AL,0FH OUT DX,AL CALL DELAY2 LOOP P32DELAY1: PUSH AXPUSH CXMOV CX,0030HDELY2: CALL DELAY2LOOP DELY2POP CXPOP AXRETDELAY2: PUSH CXMOV CX,8000HLOOP $POP CXRETCODE ENDSEND H3六、思考题1.改变延时常数,使发光二极管闪亮时间改变。
2022年东华大学软件工程专业《操作系统》科目期末试卷A(有答案)
2022年东华大学软件工程专业《操作系统》科目期末试卷A(有答案)一、选择题1、所谓(),是指将一个以上的作业放入内存,并且同时处于运行状态。
这些作业,共享处理器的时间和外设及其他资源。
A.多重处理B.多道程序设计C.实时处理D.并行执行2、下列关于操作系统的论述中,正确的是()。
A.对于批处理作业,必须提供相应的作业控制信息B.对于分时系统,不一定全部提供人机交互功能C.从响应角度看,分时系统与实时系统的要求相似D.在采用分时操作系统的计算机系统中,用户可以独占计算机操作系统中的文件系统3、现行3个同时到达的作业J1,J2,J3,它们的执行时,间分别是T1,T2和T3,且T1,<T2<T3。
若系统按单道方式运行且采用短作业优先调度算法,则平均周转时问是()。
A.T1+T2+T3B. T1+T2+T3 /3C.(3T1+2T2+T3)/3D.(T1+2T2+3T3)/34、系统中有3个不同的临界资源R1,R2和R3,被4个进程pl,p2,p3 及p4共享。
各进程对资源的需求为:pl申请RI和R2,p2申请R2和R3,p3申请R1和R3,p4申请R2。
若系统出现死锁,则处于死锁状态的进程数至少是()。
A.1B.2C.3D.45、有3个作业J1,J2,J3,其运行时间分别为2h,5h,3h,假定同时到达,并在同…台处理器上以单道方式运行,则平均周转时间最短的执行序列是()。
A.J1,J2,J3B.J3,J2,J1C.J2,J1,J3D.J1,J3,J26、若I/O所花费的时间比CPU的处理时间短很多,则缓冲区()A.最有效B.几乎无效C.均衡D.以上都不是7、如果I/O设备与存储设备间的数据交换不经过CPU来完成,则这种数据交换方式是()。
A.程序查询方式B.中断方式C.DMA方式D.外部总线方式8、采用直接存取法来读写磁盘上的物理记求时,效率最高的是()A.连续结构的文件B.索引结构的文件C.链接结构文件D.其他结构文件9、文件的顺序存取是()。
微机软件实验习题与答案(完整版)
微机原理软件实验实验1两个多位十进制数相加的实验实验内容:将两个多位十进制数相加,要求加数和被加数均以ASCII码形式各自顺序存放以DATA1和DATA必首的5个内存单元中(低位在前),结果送回DATA 攸t。
完整代码如下:DATAS SEGMENT;此处输入数据段代码STRING1 DB 'input the first number:' ,'$'STRING2 DB 13,10,nput the second number:' ,'$'STRING3 DB 13,10the output is:' ,'$'DATA1 DB 6 DUP(00H),'$'DATA2 DB 6 DUP(00H)'$'DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码STACKS ENDSASSUME CS:CODES,DS:DATAS,SS:STACKS START:MOV AX,DATASMOV DS,AX;此处输入代码段代码LEA SI,DATA1LEA DI,DATA2L0:LEA DX,STRING1;打印字符申STRING1MOV AH,09INT 21HINPUT1:;输入第一个数MOV AH,01;输入字符至AL中INT 21HCMP AL,'/'JE L1MOV [SI],ALJMP INPUT1L1:LEA DX,STRING2;打印字符申STRING2MOV AH,09INT 21HINPUT2: ;输入第二个数MOV AH,01;输入字符至ALINT 21HCMP AL,'/'JE L2MOV [DI],ALINC DIJMP INPUT2L2:MOV SI,0CLC;活空进位标志位CFPLUSE:;相加;SUB DATA1[SI],30H;SUB DATA2[SI],30H;这里不能使用这两条指令,因为如果DATA1[5]=00H,00H-30H需要借位相减,使CF=1MOV AL,DATA1[SI]ADC AL,DATA2[SI]AAA ;加法调整指令,可使两个ASCIB直接相加MOV DATA1[SI],AL ;和赋给DATA1[SI]INC SILOOP PLUSEL3:LEA DX,STRING3;打印字符申STRING3MOV AH,09INT 21HMOV CX,6MOV SI,6SHOW:DEC SICMP DATA1[SI],00HJE SHOWSHOW2:MOV DL,DATA1[SI]ADD DL,30HMOV AH,02INT 21HCMP SI,0JE L4DEC SIJMP SHOW2L4: MOV AH,4CHINT 21HCODES ENDSEND START运行结果如下:输入为低位在前,即输入1234和99999相加实际上是4321和99999 相加(即:4321+99999=104320g DCsOa sr *『4 Zpu ipe^A. WDU W K Ffsk*0.实验2两个数相乘的实验(无符号数相乘)实验内容:实现十进制数的乘法。
东华大学微机原理作业4答案
第4次作业
1 试分别分析以下指令源操作数采用何种寻址方式?
(1)MOV AX,[BP] ;寄存器间接寻址
(2)MOV DS,AX;寄存器寻址
(3)MOV DI,0FF00H;立即寻址
(4)MOV BX,[2100H];直接寻址
(5)MOV CX,[SI+5];变址寻址
(6)MOV AX,TABLE[BP][DI];带位移的基址加变址寻址(相对的基址加变址寻址)
(7)MOV DX,COUNT[BX];基址寻址
2 已知DS=0F100H,SS=0A100H,SI=1000H,DI=2000H,BX=3000H,BP=4000H。
偏移量TABLE=0AH,COUNT=0BH,试说明第1题中(1)和(4)--(7)源操作数的物理地址
(1)PA=A1000H+4000H=A5000H (4)PA=F1000H+2100H=F3100H
(5)PA=F1000H+1000H+5=F2005H (6)PA=A1000H+4000H+0AH=A500AH (7)PA=F1000H+3000H+0BH=F400BH
3 某一存储单元的段地址为ABCDH,偏移地址为ABCDH,试说明其物理地址是什么?而另一个存储单元的物理地址为F1000H,偏移地址为FFF0H,试说明其段地址是什么?
(1)PA=ABCD0H+ABCDH=B689DH
(2)段地址=(F1000H-FFF0H)/10H=E101H。
东华大学微机原理作业7答案
第7次作业1 按下是求写出相应的指令或程序段(1)写出两条使AX寄存器内容为0的指令解:(1) XOR AX,AX,(2) MOV AX,0;(3) SUB AX,AX,(4) AND AX,0(2)使BL寄存器的高低4位互换解:MOV CL,4ROL BL,CL(3)屏蔽BX寄存器的b4,b6,b11位解:AND BX,1111011110101111B(4)将AX寄存器的b5,b14位取反,其它位不变。
解:XOR AX,0100000000100000B(5)使CX寄存器中的整数变为奇数(如原来已是奇数,则不变)解:OR CX,12 完成从NUM1单元开始的连续8个压缩BCD数相加,和(超过一字节)放在RES和RES+1单元。
试写出程序段解:MOV BX,OFFSET NUM1MOV CX,8XOR AX,AXAGAIN: ADD AL,[BX]DAAXCHG AH,ALADC AL,0DAAXCHG AH,ALINC BXDEC CXJNZ AGAINMOV RES,AX3CPU中寄存器及RAM参数如图,试求独立执行下列指令后,CPU中寄存器及相应内在单元的内容为多少?(1)MOV DX,[BX]2;DX=0006H BX=0004H(2)PUSH CX;SP=1FFEH [SP]=FFFEH(3)MOV CX,BX;CX=0004H BX=0004H(4)TEST AX,01;AX=8094H CF=0(5)MOV AL,[SI];AL=87H(6)ADC AL,[DI];AL=0CCH CF=0(7)INC SI;SI=0009H(8)DEC DI;DI=0009H(10)XCHG AX,DX;AX= 17C6H DX=8094H(11)XOR AH,BL;AH=84H BL=04H(12)JMP DX;IP=17C6H4 设从BLOCK为首址的内存区域存放了256个带符号单字节数,试求这256个数的平均值,并将结果存放在RES单元。
东华大学信息学院微机实验报告
目录实验一大体程序编程和程序调试.......................... 错误!未定义书签。
一、实验目的...................................... 错误!未定义书签。
二、实验设备...................................... 错误!未定义书签。
三、实验内容及步骤................................ 错误!未定义书签。
四、试探题........................................ 错误!未定义书签。
五、实验总结...................................... 错误!未定义书签。
实验二程序设计和PC机上程序调试操作实验 ............... 错误!未定义书签。
一、实验目的...................................... 错误!未定义书签。
二、实验设备...................................... 错误!未定义书签。
三、实验内容及步骤................................ 错误!未定义书签。
实验三DOS系统功能挪用及模块化程序设计 ................ 错误!未定义书签。
一、实验目的...................................... 错误!未定义书签。
二、实验设备...................................... 错误!未定义书签。
三、实验内容及步骤................................ 错误!未定义书签。
四、试探题:...................................... 错误!未定义书签。
五、实验总结...................................... 错误!未定义书签。
大学计算机实验报告答案
大学计算机实验报告答案大学计算机实验报告答案在大学计算机课程中,实验报告是一项非常重要的任务。
通过实验报告,学生可以巩固所学的知识,提高实践能力,并且展示自己的研究成果。
然而,有时候完成实验报告并不是一件容易的事情,特别是当学生面临复杂的问题和挑战时。
因此,本文将为大家提供一些关于大学计算机实验报告的答案,帮助大家更好地完成这项任务。
首先,实验报告的引言部分是非常重要的。
在引言中,学生需要明确实验的目的和背景,以及实验所涉及的技术和方法。
此外,学生还需要提供一些相关的背景知识,帮助读者更好地理解实验的内容和意义。
例如,在一个关于图像处理的实验中,学生可以简要介绍图像处理的基本原理和应用领域。
通过引言,学生可以为读者提供一个全面的背景,使其更好地理解实验的目的和意义。
接下来,实验报告的方法部分是关键。
在方法部分,学生需要详细描述实验的步骤和操作。
学生应该清晰地说明所使用的软件和硬件工具,以及实验的设置和参数。
此外,学生还应该提供实验的数据采集和处理方法。
例如,在一个关于数据分析的实验中,学生可以描述所使用的统计方法和数据处理软件。
通过详细描述方法,学生可以使读者能够重复实验并得到相似的结果。
然后,实验报告的结果部分是非常重要的。
在结果部分,学生需要清晰地展示实验的结果和数据。
学生可以使用表格、图表和图像来展示实验的结果。
此外,学生还应该对实验结果进行分析和解释。
例如,在一个关于网络性能测试的实验中,学生可以比较不同网络配置下的性能指标,并解释其原因。
通过展示和解释实验结果,学生可以帮助读者更好地理解实验的结论和发现。
最后,实验报告的结论部分是总结和归纳实验结果的地方。
在结论部分,学生需要总结实验的主要发现和结论,并提出相关的建议和展望。
学生可以回答实验的研究问题,并讨论实验结果的意义和影响。
此外,学生还可以提出一些改进和扩展的方向,以便未来的研究。
通过恰当地总结和归纳实验结果,学生可以使读者对实验的价值和意义有更深入的理解。
微机原理软件实验报告共27页word资料
信息与通信工程学院微机原理软件实验报告班级:姓名:班内序号:学号:日期:2019年11月实验一DEBUG的使用一、实验目的:1.掌握汇编程序的编辑,编译,连接和执行的全过程;2.学习和掌握用DEBUG调试程序的方法.二、实验内容:1.用编辑软件,输入以下汇编语言源程序:DAT SEGMENTA DB 20 ;(自定)B DB 15 ;(自定)Y DB 3 DUP(0)Z DB 0,0DAT ENDSSTA SEGMENT STACKDW 50 DUP(?)STA ENDSCOD SEGMENTASSUME CS:COD,DS:DATSTAR PROC FARPUSH DSXOR AX,AXPUSH AXMOV AX,DATMOV DS,AXMOV AX,STAMOV SS,AXMOV AL,AMOV Z,ALMOV Z+1,ALCALL SUB1MOV AL,BMOV Z,ALMOV Z+1,ALCALL SUB1MOV AL,AMOV Z,ALMOV AL,BMOV Z+1,ALCALL SUB1ADD WORD PTR Y,AXADC BYTE PTR[Y+2],0RETSTAR ENDPSUB1 PROCMOV AL,ZMOV AH,Z+1MUL AHADD WORD PTR Y,AXADC BYTE PTR[Y+2],0RETSUB1 ENDPCOD ENDSEND STAR2.通过编译,连接形成可执行文件.3.用DEBUG 将可执行文件调入,并进行调试.(1)用D 命令观察数据区在内存中的具体内容,记录单元A 和B 的具体地址.(2)用U 命令对目标代码反汇编,观察反汇编后的结果.注意发现源程序的起始位置, 并记录这个起始地址.(3)用T 命令作单步跟踪调试.比较每条指令执行后的结果和原来的理解是否一致.得出程序运行的结果:它们是写在什么单元,具体内容是什么; 并判断结果是否正确.(4)在子程序SUB1 的入口处设一断点,用G 命令执行程序. 在断点处观察堆栈的内容,比较堆栈的内容和程序返回地址是否一致.(5)用E 命令修改单元A,B 的内容,重新执行程序,并记录结果.(6)用M 命令和A 命令对程序进行修改: 将主程序中最后两条指令(ADD 和ADC) 修改为一条CALL SUB1 指令,重新执行程序.(7)退出DEBUG.4.重新使用编辑软件,把源程序最后一句中的STAR 去掉.再次生成可执行文件,并用DEBUG 调入内存.当使用U 命令时,显示的结果与前一次(未加STAR) 的结果有何不同?三、预习题:1.熟悉常用的DEBUG 命令.2.阅读并分析程序的功能.3.若SS=2000H,SP=FFFFH, 向堆栈中压入4 字节数据后,如何用D 命令显示压入堆栈的内容?答:使用debug 指令“d 2000:0000”即可显示压入堆栈的内容,这是因为SP+1 会溢出,变成0000。
东华大学微机硬件课程设计实验报告
目录实验1 存储器读写实验 (1)实验2 简单I/O口扩展实验 (3)实验3 8255并行口实验 (4)实验4 8253定时器/计数器接口实验 (5)实验5 8259中断控制器实验 (7)一、基础实验部分实验1 存储器读写实验一、实验设备微机实验箱、8086CPU模块。
二、实验要求学会用使用工具软件,掌握用单步执行和断点方式运行程序,观察寄存器和内存中的数据变化等程序调试的手段。
三、实验步骤1、实验接线:本实验无需接线。
2、编写调试程序。
3、运行实验程序,可采取单步、设置断点方式,打开内存窗口可看到内存区的变化。
四、思考题1、①单步执行到“intram”标号的语句时,ds寄存器的数据是什么?②采用断点方式运行时执行到第一个断点处,2000H~202FH内存单元的数据是什么?③执行到第二个断点处,2000H~200FH内存单元的数据是什么?④并根据观察结果和对源程序的判读简述源程序的运行效果。
答:①ds寄存器的数据是0100H。
②2000H~202FH内存单元的数据全是00。
③2000H~200FH内存单元的数据是AA 55 AA 55 AA 55 AA 55 AA 55 AA 55 AA 55AA 55。
④源程序的运行效果是在第一个间断点处可以把数据清零,在第二个间断点处即可完成赋值。
2、修改程序,实现从2000H到200FH单元依次赋值00H~0FH的功能。
答:程序如下code segmentassume cs:codeorg 0100hstart: mov ax,0100hmov ds,ax ;数据段地址mov es,axmov si,1000h ;偏移地址mov cx,0010h ;循环次数mov al,0 ;将al清零intram: mov [si],alinc si ;将偏移地址+1inc al ;将al的值+1loop intramnop ;设置断点处jmp startcode endsend start五、出现的问题及解决过程序号出现的问题原因解决过程1 不能得到内存单元的运行结果未在程序中设置断点在程序中设置正确断点2 2000H到200FH单元得不到00H~0FH设置的循环次数不对mov cx,0016h将循环次数改为mov cx,0010h实验2 简单I/O口扩展实验一、实验设备微机实验箱、8086CPU模块。
东华大学软件测试作业整理_8184
一、当测试结果与测试用例中描述的有所不同时,有哪些可能的原因呢?为什么说测试的初始状态很重要?答:测试环境不同,测试步骤出现差异,测试系统本身bug。
因为在进行测试时,需要保证测试对象的初始状态一致,如果初始状态不一致或者出现错误那么接下来的测试都会收到影响从而导致测试结果的错误。
二、采用等价类和边界值设计方法,为以下的“字符串替换”函数设计黑盒测试用例:void replace(char s1[],char s2[],char s3[])函数规格说明:(1) replace函数的功能是将s1 字符串中的所有s2 字符串 (s2 字符串可以是s1 字符串的字串 ) 替换为 s3 字符串,替换结果保存在s1 字符串中。
(2) s1、s2、s3字符串的长度都不超过1024 字节;(3)s1 、s2 、 s3 字符串组成只能是英文字母、数字和空格(空格作为单词间的分隔符)。
答:等价类划分:有效等价类无效等价类S1:{ 1,2, ,,1024 }{ 0 }, {1024, }S2:{1,,,S1}{0} , S2>S1S3:{1,,,S1 }{0} , S2>S1{ 英文字母,数字和空格}{ 非法字符 }用例设计:输入输出S1=512,S2=100,S3=100替换成功S1=1025;S2=100,S3=100输入报错S1=512; S2=0; S3=100输入报错S1=512; S2=2048;S3=1024输入报错S1=100; S2 =S3=50没有改变S1=$$$$;s2=$$$;S3=111;输入报错三、对于“成绩统计”函数:double成绩统计(char filename [])要求:(1)列出测试需求;(2)采用等价类和边界值设计方法设计黑盒测试用例。
函数规格说明:(1)成绩统计函数计算 filename 所指定的文本文件中所有学生的平均成绩并返回,计算结果为小数(保留小数点后两位,小数点后多余的位数四舍五入);(2)filename 字符串最长 255 个字符,只允许是大小写英文字符、数字和下划线;(3)filename 必须是文本文件,文件名后缀必须是.txt ;(4) filename中的第一个数字是数目,取值为1-1000( 表示文件中保存的学生数目) ,其后是相应的学生成绩;学生成绩必须是 0-100 的整数;成绩间以一个或多个空格分隔;成绩可以是单行也可以是多行;成绩不要求是排序的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录实验一DEBUG的启动及其基本命令的使用实验二内存操作数及寻址方法实验三汇编语言程序的调试与运行实验四查表程序设计实验五系统功能调用实验六分支程序设计实验七循环程序设计实验八子程序设计实验九综合程序设计实验心得体会参考文献实验一 DEBUG的启动及其基本命令的使用源程序:(指导书中给出)DA TA SEGMENTSTRING1 DB 'Move the cursor backward'STRING2 DB 'Move the cursor backward'MESS1 DB 'Match.',13,10,'$'MESS2 DB 'No Match.',13,10,'$'DA TA ENDSSTACK SEGMENT STACKDB 40 DUP (?)STACK ENDSPROGNAM SEGMENTASSUME CS:PROGNAM,DS:DA TA,ES:DA TA,SS:STACKMAIN PROC FARSTART: PUSH DSXOR AX,AXPUSH AXMOV AX,DATAMOV DS,AXMOV ES,AXMOV AX,STACKMOV SS,AXLEA SI,STRING1LEA DI,STRING2CLDMOV CX,25REPZ CMPSBJZ MA TCHLEA DX,MESS2JMP SHORT DISPMATCH: LEA DX,MESS1DISP: MOV AH,09hINT 21HRETMAIN ENDPPROGNAM ENDSEND START运行结果:用DEBUG调试将输出字符串改为‘No Match’用E指令修改“backward”为“forward”再次用d命令查看修改结果。
用g命令运行程序实验二内存操作数及寻址方法1、(1)程序说明:设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。
请用堆栈作为两寄存器交换内容的中间存储单元,用字处理程序编辑程序。
(2)调试说明:对SP的地址分配不到2000,计算机自动分配为0000,此时我就人为的把堆栈的首地址定义为2000。
(3)写出源程序清单和执行结果:源程序:STACK SEGMENT STACKDW 100 DUP(0)STACK ENDSCODE SEGMENTASSUME SS:STACK,CS:CODESTART:MOV AX,3000HMOV BX,5000HMOV SP,2000HPUSH AX ;将AX中的内容压栈MOV AX,BX ;BX中的内容给AXPOP BXMOV AH,4CHINT 21HCODE ENDSEND START用debug调试结果:2、程序说明:用masm和link 对以下程序进行汇编和连接,调试程序在DEBUG 调试程序状态下进行。
用单步执行的方法,分析每条指令源地址的形成过程,当数据传送完毕时,AX中的内容是什么。
源程序:DA TA SEGMENTORG 0300HA DB 12H,23H,34H,45H,56H,67H,78H,89H,9AHDA TA ENDSPROGNAM SEGMENTASSUME CS:PROGNAM,DS:DA TASTART: MOV AX,DATAMOV DS,AXMOV BX,0300HMOV AX,0300H ;立即数寻址MOV AX,[0300H] ;存储器寻址方式中的直接寻址方式MOV AX,[BX] ;寄存器间接寻址MOV SI,2MOV AX,0001[BX] ;基址寻址MOV AX,[BX][SI] ;基址加变址MOV AX,0001[BX][SI] ;带偏移量的基址加变址MOV AH,4CHINT 21HPROGNAM ENDSEND START用debug调试结果:实验三算术运算指令1、程序说明:编写三个完整的汇编语言源程序,完成以下计算。
其中X、Y、Z、R、W均为存放16位带符号数单元的地址。
(1)Z←W+(Z-X)(2)Z←W-(X+6)-(R+9)(3)Z←(W*X)/(Y+6),R←余数2、调试说明:当编译完成后,计算机未能生成.OBJ的文件,经检查错误发生在ADD使用上,我把两个寄存器操作数同时用在ADD语句里,结果出错了。
把ADD语句稍作写该后,程序运行正确。
3、写出源程序清单和执行结果本实验我们只做前两个,即:(1)Z←W+(Z-X);(2)Z←W-(X+6)-(R+9)源程序:(1) Z←W+(Z-X)DA TA SEGMENTX DD 0001HZ DD 0003HW DD 0005HDA TA ENDSCODE SEGMENTASSUME CS:CODE, DS:DA TASTART: MOV AX,DA TAMOV DS,AXMOV AX,XMOV BX,ZSUB BX,AXMOV AX,WADD BX,AXMOV Z,BXMOV AH,4CHINT 21HCODE ENDSEND START用debug调试结果:源程序:(2)Z←W-(X+6)-(R+9)DA TA SEGMENTX DW 0006HR DW 003AHW DW 0110HZ DW ?DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA START: MOV AX,DATAMOV DS,AXMOV AX,XADD AX,6MOV BX,RADD BX,9MOV CX,WSBB CX,AXSBB CX,BXMOV Z,CXMOV AH,4CHINT 21H CODE ENDSEND START 用debug调试结果:实验四查表程序设计1、程序说明:用查表的方法将一位十六进制数转换成与它相应的ASCII码,并将结果存放到ASCI单元中。
2、调试说明:开始生成.OBJ文件时,调试不成功,以为是程序编译有误,后经再三检查都未发现错误,这时只好从头做检查,结果发现了错误:从本实验有的提示语段中拷贝过来的语句书写有误,即符号的书写为中文书写,以至于整个程序未能通过编译。
把中文书写修改为英文书写后,编译成功。
3、源程序清单和执行结果:源程序:DA TA SEGMENTTABLE DB 30H,31H,32H,33H,34H,35H,36H,37HDB 38H,39H,41H,42H,43H,44H,45H,46HHEX DB 08HASCI DB ?DA TA ENDSCODE SEGMENTASSUME DS:DA TA,CS:CODESTART: MOV AX,DATAMOV DS,AXMOV BX,OFFSET TABLEMOV AL,HEX ;查找对象的下标存在AL中XLATMOV ASCI,ALMOV AH,4CHINT 21HCODE ENDSEND START用debug调试结果:实验五系统功能调用1、程序说明:试编写一个汇编语言程序,要求对键盘输入的小写字母用大写字母显示出来。
2、调试说明:在DEBUG显示字符窜时,曾显示乱码,未能按预期显示,经检查发现在编译字符窜时出现错误,因为调用21H中断输出一串字符要求用'$'结尾,我没用上‘$’。
还有,键盘输入字符是被存放在AX内,当要多次使用AX 时应该把输入内容另存一地址3、源程序清单和执行结果:源程序:DA TA SEGMENTDB ?DA TA ENDSSTACK SEGMENT STACKDB 5 DUP(0)STACK ENDSCODE SEGMENTASSUME DS:DA TA, SS:STACK,CS:CODESTART: MOV AX,DATAMOV DS,AXMOV AH,01H ;从输入端读取字符INT 21HSUB AL,20H ;小写转换成大写MOV DL,ALMOV AH,02H ;输出字符到终端INT 21HMOV AH,4CHINT 21HCODE ENDSEND START运行结果:实验六分支程序设计1、实验说明:假设有一组数据:5,-4,0,3,100,-51,请编一程序,判断:每个数大于0,等于0,还是小于0;并输出其判断结果。
即:1 当x>0y= 0 当x=0-1 当x<02、调试说明:在最初的程序中,我使用了MOV BX,XX等语句,后来发现像这样的语句在实际使用中有些累赘,于是我便做了修改,简化了汇编语言。
其次,在调试中,发现符号无法显示的问题,于是采用两次显示符号的方法,较理想的解决了负号问题。
34、源程序清单和执行结果:源程序:DA TA SEGMENTXX DB 05H,0FCH,00H,03H,64H,0CDHY1 DB 'Y=1',0DH,0AH,'$'Y2 DB 'Y=0',0DH,0AH,'$'Y3 DB 'Y=-1',0DH,0AH,'$'DA TA ENDSSTACK SEGMENT STACKDB 10 DUP(0)STACK ENDSCODE SEGMENTASSUME DS:DA TA,SS:STACK,CS:CODE START: MOV AX,DATAMOV DS,AXLEA SI,XXMOV AX,0MOV CX,6L1: MOV AL,[SI]CMP AL,0 ;与0比较JG BIGERJE EQUALMOV DX,OFFSET Y3MOV AH,09HINT 21HJMP OUTPUTBIGER: MOV DX,OFFSET Y1MOV AH,09HINT 21HJMP OUTPUTEQUAL: MOV DX,OFFSET Y2MOV AH,09HINT 21HOUTPUT:INC SILOOP L1MOV AH,4CHINT 21HCODE ENDSEND START运行结果:思考题:程序中的原始数据是以怎样的形式存放在数据区中的?请用DEBUG调试程序观察并分析。
以补码形式存放实验七循环程序设计实验内容:1. 编制程序计算S=1+2•3+3•4+4•5+……+N(N+1)+……直到N(N+1)大于200为止,并将结果由屏幕上显示出来。
其程序的流程图如图7. 1所示。
2. 将从3000H内存单元开始的100个字节存储单元全部清0。
本实验要求在DEBUG调试状态下进行,包括汇编程序、运行程序、检查结果。
源程序:(1)编制程序计算S=1+2•3+3•4+4•5+……+N(N+1)+……直到N(N+1)大于200为止,并将结果由屏幕上显示出来。