计算机组成原理与汇编语言程序设计编程练习题.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:10 大小:71KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

计算机组成原理与汇编语言程序设计编程练习题.doc

计算机组成原理与汇编语言程序设计编程练习题.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

《计算机组成原理与汇编语言程序设计》编程练习题一、填空题1、构成MSAM汇编语言程序的三种语句是:指令语句、和宏指令语句。2、构成MSAM汇编语言程序的三种语句是:、伪指令语句和宏指令语句。3、构成MSAM汇编语言程序的三种语句是:指令语句、伪指令语句和。4、在汇编程序中的变量均有三个属性:段属性、偏移量属性和。5、在汇编程序中的变量均有三个属性:、偏移量属性和类型属性。6、在汇编程序中的变量均有三个属性:段属性、和类型属性。7、在汇编语言程序设计中的三种构成方法是:顺序程序设计、和循环程序设计。8、在汇编语言程序设计中的三种构成方法是:、分支程序设计和循环程序设计。9、在汇编语言程序设计中的三种构成方法是:顺序程序设计、分支程序设计和。10、汇编语言中的常数有和字符常数。11、在汇编语言程序设计中的三种构成方法分别是:顺序程序设计、和循环程序设计。12、汇编语言源程序至少须有一个_______________段和一条_______________伪指令,而________________段和__________________段则视需要而设。二、判断题1、指令TESTAL,0执行后AL的内容一定是全零。()2、逻辑右移1位和算术右移1位结果都是一样的。()3、下面是合法的数据传送指令:MOVAL,255。()4、指令之间的衔接方式有两种:串行的重叠处理方式和并行的顺序安排方式。()5、指令SHRAX,4可以将AX的内容逻辑右移4位。()三、单项选择题1、把源程序变成目标程序的应用软件是_。A、EDITB、MASMC、LINKD、DEBUG四、简答题1.请简述汇编语言程序开发的过程2.请简述汇编语言源程序和机器语言程序有什么不同?3.汇编程序开发步骤中的汇编程序MASM的主要作用是什么?4.MASM汇编程序开发步骤中的LINK的主要作用是什么?5.顺序程序设计的主要特点是什么?6.一个循环程序通常由哪5个部份组成?7.请回答汇编语言程序开发的四个主要步骤8.请回答汇编语言程序开发过程中的第二和第三步所需要的软件名称和生成的主要文件的扩展名。(如第一步需要软件名称是字编辑软件PE等,生成的源程序的扩展名是ASM)9.请简述调用系统功能子程序的设计格式是什么?10.指令语句和伪指令语句有什么不同?11.简述汇编语言的组成及各基本语句的作用。12.什么是系统调用?如何进行系统调用?五、分析设计题1.如下程序是准备将0至100中的奇数求和,结果送SUM字单元,请用汇编语言完成此程序的设计。DATASEGMENT;(1)定义结果单元,初值为0DATAENDSSTACTSEGMENTPARASTACKDB100DUP(?)STACKENDS;定义好堆栈CODESEGMENTASSUMEDS:DATA,CS:CODE,SS:STACKSTART:MOV;(2)MOVDS,AX;装填DATA数据段地址MOVAX,0MOVDX,1LOOP1:CMPDX,100JGEXIT;大于转移ADDAX,DX;(3)调整DX的值JMPLOOP1;无条件转移EXIT:;(4)将结果存入SUM单元MOVAH,4CHINT21H;正常返回DOSCODEENDS;(5)程序结束2.如下程序是准备将100至200中的奇数求和,结果送SUM字单元,请用汇编语言完成此程序的设计。DATASEGMENTSUMDW0;定义结果单元,初值为0DATAENDSSTACTSEGMENTPARASTACKDB100DUP(?);(1)定义好堆栈CODESEGMENT;(2)分配段寄存器START:MOVAX,DATA;(3)装填DATA数据段地址MOVAX,0MOVDX,101LOOP1:;(4)比较,形成条件JGEXIT;大于转移ADDAX,DXINCDX;调整DX的值INCDX;(5)做下一次EXIT:MOVSUM,AX;将结果存入SUM单元MOVAH,4CHINT21H;正常返回DOSCODEENDSENDSTART;程序结束3.如下程序是准备将0至100中的偶数求和,结果送SUM字单元,请用汇编语言完成此程序的设计。DATASEGMENTSUMDW0;定义结果单元,初值为0DATAENDSSTACTSEGMENTPARASTACKDB100DUP(?)STACKENDS;定义好堆栈CODESEGMENT;(1)分配段寄存器START:MOVAX,DATAMOVDS,DATA;装填DATA数据段地址;(2)设定初值MOVDX,2LOOP