计算机组成原理实验题

合集下载

计算机组成原理试题及答案

计算机组成原理试题及答案

计算机组成原理试题及答案一、选择题。

1. 下列哪个是计算机组成原理的基本概念?A. 数据结构。

B. 操作系统。

C. 计算机体系结构。

D. 算法。

答案,C。

2. 计算机组成原理的核心是什么?A. 中央处理器。

B. 内存。

C. 输入输出设备。

D. 总线。

答案,A。

3. 下列哪个不是计算机组成原理中的主要部件?A. 控制单元。

B. 运算器。

C. 存储器。

D. 输入设备。

答案,D。

4. 计算机组成原理中,数据和指令在内存中是以什么形式存储的?B. 十进制。

C. 八进制。

D. 十六进制。

答案,A。

5. 计算机组成原理中,控制单元的主要功能是什么?A. 控制数据传输。

B. 进行运算。

C. 存储数据。

D. 输入输出。

答案,A。

1. 计算机组成原理中,CPU的作用是进行数据处理和______。

答案,控制。

2. 内存是计算机中的______存储器。

答案,临时。

3. 计算机组成原理中,总线是连接各个部件的______。

答案,通信线路。

4. 控制单元的主要功能是______。

答案,控制数据传输和处理。

5. 计算机组成原理中,运算器负责进行______运算。

答案,算术和逻辑。

1. 简述计算机组成原理中的冯·诺依曼结构。

答,冯·诺依曼结构是一种计算机体系结构,主要包括存储器、运算器、控制器、输入设备和输出设备等五大部分。

其中存储器用于存储数据和指令,运算器用于进行算术和逻辑运算,控制器用于控制数据传输和处理,输入设备用于接收数据输入,输出设备用于显示处理结果。

2. 什么是指令周期?它与时钟周期有什么关系?答,指令周期是指计算机执行一条指令所需的时间,它包括取指令周期、执行周期和访存周期。

时钟周期是CPU中时钟脉冲的时间间隔,它决定了CPU的工作速度。

指令周期与时钟周期的关系在于,时钟周期是指令周期的基本单位,指令周期是由若干个时钟周期组成的。

四、综合题。

1. 简述计算机组成原理中的存储器层次结构。

答,计算机存储器层次结构包括寄存器、高速缓存、内存和外存等多个层次。

计算机组成原理例题

计算机组成原理例题

3.16. 在异步串行传送系统中,字符格式为:1个起始位、8个数据位、1个校验位、2个终止位。

若要求每秒传送120个字符,试求传送的波特率和比特率。

解:一帧包含:1+8+1+2=12位故波特率为:(1+8+1+2)*120=1440bps比特率为:8*120=960bps4。

7. 一个容量为16K ×32位的存储器,其地址线和数据线的总和是多少?当选用下列不同规格的存储芯片时,各需要多少片?1K ×4位,2K ×8位,4K ×4位,16K ×1位,4K ×8位,8K ×8位解:地址线和数据线的总和 = 14 + 32 = 46根;选择不同的芯片时,各需要的片数为:1K ×4:(16K ×32) / (1K ×4) = 16×8 = 128片2K ×8:(16K ×32) / (2K ×8) = 8×4 = 32片4K ×4:(16K ×32) / (4K ×4) = 4×8 = 32片16K ×1:(16K ×32)/ (16K ×1) = 1×32 = 32片4K ×8:(16K ×32)/ (4K ×8) = 4×4 = 16片8K ×8:(16K ×32) / (8K ×8) = 2×4 = 8片4.11. 一个8K ×8位的动态RAM 芯片,其内部结构排列成256×256形式,存取周期为0.1μs 。

试问采用集中刷新、分散刷新和异步刷新三种方式的刷新间隔各为多少?解:采用分散刷新方式刷新间隔为:2ms ,其中刷新死时间为:256×0。

1μs=25.6μs采用分散刷新方式刷新间隔为:256×(0。

计算机组成原理测试题及答案

计算机组成原理测试题及答案

一.选择题(每空1分,共20分)1.将有关数据加以分类、统计、分析,以取得有利用价值的信息,我们称其为_____。

A. 数值计算B. 辅助设计C. 数据处理D. 实时控制2.目前的计算机,从原理上讲______。

A.指令以二进制形式存放,数据以十进制形式存放B.指令以十进制形式存放,数据以二进制形式存放C.指令和数据都以二进制形式存放D.指令和数据都以十进制形式存放3.根据国标规定,每个汉字在计算机内占用______存储。

A.一个字节B.二个字节C.三个字节D.四个字节4.下列数中最小的数为______。

A.(101001)2B.(52)8C.(2B)16D.(44)105.存储器是计算机系统的记忆设备,主要用于______。

A.存放程序B.存放软件C.存放微程序D.存放程序和数据6.设X= —0.1011,则[X]补为______。

A.1.1011B.1.0100C.1.0101D.1.10017. 下列数中最大的数是______。

A.(10010101)2B.(227)8C.(96)16D.(143)108.计算机问世至今,新型机器不断推陈出新,不管怎样更新,依然保有“存储程序”的概念,最早提出这种概念的是______。

A.巴贝奇B.冯. 诺依曼C.帕斯卡D.贝尔9.在CPU中,跟踪后继指令地指的寄存器是______。

A.指令寄存器B.程序计数器C.地址寄存器D.状态条件寄存器10. Pentium-3是一种__A____。

A.64位处理器B.16位处理器C.准16位处理器D.32位处理器11. 三种集中式总线控制中,_A_____方式对电路故障最敏感。

A.链式查询B.计数器定时查询C.独立请求12. 外存储器与内存储器相比,外存储器____B__。

A.速度快,容量大,成本高B.速度慢,容量大,成本低C.速度快,容量小,成本高D.速度慢,容量大,成本高13. 一个256KB的存储器,其地址线和数据线总和为__C____。

计算机组成原理习题含参考答案

计算机组成原理习题含参考答案

计算机组成原理习题含参考答案一、单选题(共90题,每题1分,共90分)1、在下列寻址中,()寻址方式需要先运算再访问主存。

A、间接B、直接C、变址D、立即正确答案:C2、在链式查询方式下,若有N个设备,则()oA、只需一条总线请求线B、需要N条总线请求线C、视情况而定,可能一条,也可能N条总线请求线D、以上说法都不对正确答案:A3、以下有关I/O端口的叙述中,错误的是()oA、I/O接口中有命令端口、状态端口、数据端口B、I/O接口中命令端口和状态端口不能共用同一个C、I/O接口中程序可访问的寄存器被称为I/O端口D、I/O端口可以和主存统一编号,也可以单独编号正确答案:B4、用移码表示浮点数的阶码,其好处是()。

A、便于求阶差B、便于用比较电路比较阶的大小C、提高运算精度D、便于判别溢出正确答案:B5、在取指操作结束后,程序计数器中存放的是()。

A、程序中指令的数量B、当前指令的地址C、已经执行指令的计数值D、下一条指令的地址正确答案:D6、微指令格式分为水平型和垂直型,水平型微指令的位数(),用它编写的微程序()。

A、较短,较少B、较长,较短C、较多,较长D、较少,较短正确答案:B7、用二地址指令来完成算术运算时,其结果一般存放在()。

A、其中一个地址码提供的地址中B、栈顶C、累加器(ACC)中D、以上都不对正确答案:A8、为了缩短指令中某个地址段(或地址码)的位数,有效的方法是采取()。

A、变址寻址B、间接寻址C、立即寻址D、寄存器寻址正确答案:D9、从计算机系统结构上讲,机器语言程序员所看到的机器属性是()oA、编程要用到的硬件组织B、计算机硬件的全部组织C、计算机软件所要完成的功能D、计算机各部件的硬件实现正确答案:A10、用于笔记本电脑的大容量存储器是()oA、U盘B、软磁盘C、固态盘D、磁带正确答案:C11、D/A转换是()。

A、把数字量转换为模拟量,把转化结果输出计算机B、把计算机输出的模拟量转化为数字量C、把模拟量转化为数字量,把数字量输入到计算机D、把计算机输出的模拟量转为数字量正确答案:A12、程序P在机器M上的执行时间是20秒,编译优化后,P执行的指令数减少到原来的70%,而CP1增加到原来的1.2倍,则P在M上的执行时间是()oA、16.8秒B、8.4秒C、117秒D、14秒正确答案:A13、以下说法错误的是()oA、计算机的机器字长是指数据存储与运算的基本单位B、寄存器由触发器构成C、计算机中一个字的长度都是32位D、磁盘可以永久性存放数据和程序正确答案:C14、主设备通常指()oA、掌握总线权的设备B、发送信息的设备C、主要的设备D、接收信息的设备正确答案:A15、字长12位,用定点补码规格化小数表示时,所能表示的正数范围是()OA、1/2-(1-2-11)B、(1/2+2-11)-(1-2-11)C、2-11-(1-2-11)D、2-12-(1-2-12)正确答案:A16、ASCI1码是对()进行编码的一种方案。

汇编程序计算机组成原理实验及答案

汇编程序计算机组成原理实验及答案

实验一 I/O地址译码一、实验目的掌握I/O地址译码电路的工作原理。

二、实验原理和内容实验电路如图1-1所示,其中74LS74为D触发器,可直接使用实验台上数字电路实验区的D触发器,74LS138为地址译码器。

译码输出端Y0~Y7在实验台上“I/O地址“输出端引出,每个输出端包含8个地址,Y0:280H~287H,Y1:288H~28FH,……当CPU执行I/O指令且地址在280H~2BFH范围内,译码器选中,必有一根译码线输出负脉冲。

例如:执行下面两条指令MOV DX,2A0HOUT DX,AL(或IN AL,DX)Y4输出一个负脉冲,执行下面两条指令MOV DX,2A8HOUT DX,AL(或IN AL,DX)Y5输出一个负脉冲。

图1-1利用这个负脉冲控制L7闪烁发光(亮、灭、亮、灭、……),时间间隔通过软件延时实现。

三、编程提示1、实验电路中D触发器CLK端输入脉冲时,上升沿使Q端输出高电平L7发光,CD端加低电平L7灭。

;*******************************;;* I/O地址译码 *;;*******************************;outport1 equ2a0houtport2 equ2a8hcode segmentassume cs:codestart:mov dx,outport1out dx,alcall delay ;调延时子程序mov dx,outport2out dx,alcall delay ;调延时子程序mov ah,1int16hje startmov ah,4chint21hdelay proc near;延时子程序mov bx,200lll: mov cx,0ll: loop lldec bxjne lllretdelay endpcode endsend start实验二简单并行接口一、实验目的掌握简单并行接口的工作原理及使用方法。

计算机组成原理习题及答案

计算机组成原理习题及答案

计算机组成原理习题及答案简答题1.什么是存储程序原理?按此原理,计算机应具有哪几大功能?1.请问:存储程序原理就是用户事先编号的程序先取走主存中,然后cpu在从主存中抽出指令、运转指令。

按此原理,计算机应当具备输入输出设备,即为能够把程序和数据通过输入输出设备送进主存中;还应当具备存储设备,即为内存能够存储程序和数据;最后应当具备控制器和运算器,即cpu能够从主存中抽出程序和数据,并按顺序一条一条抽出、继续执行。

2.存储器与cpu相连接时,应当考量哪些问题?2.答:应考虑(1)合理选择存储芯片,要考虑芯片的类型和数量尽量使连线简单方便;(2)地址线的连接,将cpu地址线的低位与存储芯片的地址线相连,以选择芯片中的某一单元,儿高位则在扩充存储芯片时用,用来选择存储芯片;(3)数据线的连接,cpu的数据线与存储芯片的数据线不一定相等,相等时可直接连接,不相等时要对存储芯片进行扩位,使其相等连接;(4)读/写控制线的连接,高电平为读,低电平为写;(5)片选线的连接,cpu的高位地址来产生片选信号。

3.什么叫做地址重合区,什么情况下可以产生地址重合区?3.答:存储系统中的某些存储单元有多个地址,这种现象叫地址重叠区。

原因是,存储系统是由多个芯片组成的,在产生片选信号时,如果只用部分高位地址来产生片选信号,则有一部分高位地址线没用,这样这部分地址线的值就不确定,可以为0也可以为1,所以存储芯片的地址空间也不确定了,出现了重复值,产生了地址重叠区。

4.什么叫“对准字”和“未对准字”,cpu对二者的访问有何不同?4.请问:cpu出访的数据类型存有字节,半字,字和双字。

若字长为32十一位,则字节8十一位,半字16十一位,字32十一位,双字64十一位。

对准字就是存储这四种数据类型时,字节的初始地址任一,半字的初始地址为2的倍数,字的初始地址为4的倍数,双字的初始地址为8的倍数。

未对准字就是四种数据类型在存储时都任一,无论从哪个存储单元已经开始都可以。

计算机组成原理习题及答案

计算机组成原理习题及答案1 常用的I/O方式中, __程序查询方式_______ 是完全由软件实现I/O 操作的方式.2 CPU从主存取出一条指令并执行该指令的时间叫做_指令周期_____,它常用若干个 _机器周期_____来表示,而后者又包含有若干个时钟周期3 总线是构成计算机系统的互连机构, 是多个__系统功能 ____部件之间进行数据传送的__公共____通道。

4 Cache是一种_高速缓冲_____存储器,是为了解决CPU和__主存____之间_速度_____上不匹配而采用的一项重要硬件技术。

5 总线的仲裁方式包括__集中_____仲裁和__分布_____仲裁1.在计算机中,经常采用的数据校验码是奇偶校验、海明校验和 CRC循环校验校验。

2.并行存储器结构有双端口存储器和多模块交叉存储器两种。

3.复杂指令系统的计算机简称为CISC ,精简指令系统的计算机简称为 RISC 。

4. 控制器中必须有的两个寄存器是 PC 和 IR 。

5.总线仲裁的方式有集中式和分布式两种。

6.磁盘存储器的访问时间主要包括平均等待时间时间、平均找道时间时间和数据传输时间。

7.主机与外设间的数据交换方式有程序查询方式、程序中断方式、DMA方式和通道方式等。

并行存储器结构有-双端口-和-多体交叉-两种。

8 复杂指令系统的计算机简称为CSIC、精简指令系统的计算机简称为RSIC。

9 控制器中必须有的两个寄存器是IR和PC。

10 总线仲裁的方式有集中式和分分散式两种。

10 磁盘存储器的访问时间主要包括寻道时间、等待时间和数据传输时间。

11 常见的主机与外设间的数据交换方式有程序查询方式、中断方式、DMA方式、通道方式和外围处理机方式。

12 浮点数加减法运算的步骤大体分五步: 0操作数检查、对阶、尾数加减、规格化和舍入处理等。

13 CACHE的写操作策略有全写和写回、写一次法三种。

14 一般机器指令由操作码和地址码组成。

15 微指令的基本格式可分为水平和垂直两种。

(完整版)计算机组成原理第2章例题及参考答案

第二章数码系统例题及答案例题1写出下列各数的原码、反码、补码、移码(用二进制数表示)。

(1)-35/64 (2)23/128 (3)-127(4)用小数表示-1 (5)用整数表示-1 (6)用整数表示-128解:-1在定点小数中原码和反码表示不出来,但补码可以表示,-1在定点整数中华表示最大的负数,-128在定点整数表示中原码和反码表示不出来,但补码可以。

例题2设机器字长为16位,分别用定点小数和定点整数表示,分析其原码和补码的表示范围。

解:(1)定点小数表示最小负数最大负数0 最小正数最大正数二进制原码 1.111...111 1.000...001 0.000...001 0.111 (111)十进制真值- (1-215) -2152-151-2-15原码表示的范围:- (1-215) ~1-2-15二进制补码 1.000...000 1.111...111 0.000...001 0.111 (111)十进制真值-1 -2152-151-2-15原码表示的范围:- 1 ~1-2-15(2)定点整数表示最小负数最大负数0 最小正数最大正数二进制原码1111...111 1000...001 0000...001 0111 (111)十进制真值- (215-1) -1 +1 215-1原码表示的范围:- (215-1) ~215-1 [-32767 ~ +32767]二进制补码1000...0001111...111 0000...001 0111 (111)十进制真值-1 +1 215-1原码表示的范围:- 215~215-1 [-32768 ~ +32767]一、选择题1.下列数中最小的数为()。

A.(101001)2B.(52)8C.(101001)BCD D.(233)162.下列数中最大的数为()。

A.(10010101)2B.(227)8C.(96)16D.(143)53.在机器数中,()的零的表示形式是惟一的。

运算器实验-计算机组成原理

实验题目运算器实验一、算术逻辑运算器1.实验目的与要求:1.掌握算术逻辑运算器单元ALU(74LS181)的工作原理。

2.掌握简单运算器的数据传送通道。

3.验算由74LS181等组合逻辑电路组成的运算功能发生器运算功能。

4.能够按给定数据,完成实验指定的算术/逻辑运算。

2.实验方案:(一)实验方法与步骤1实验连线按书中图1-2在实验仪上接好线后,仔细检查正确与否,无误后才接通电源。

每次实验都要接一些线,先接线再开电源,这样可以避免烧坏实验仪。

2 用二进制数据开关分别向DR1寄存器和DR2寄存器置数。

3 通过总线输出寄存器DR1和DR2的内容。

(二)测试结果3.实验结果和数据处理:1)SW-B=0时有效,SW-B=1时无效,因其是低电平有效。

ALU-B=0时有效,ALU-B=1时无效,因其是低电平有效。

S3,S2,S1,S0高电平有效。

2)做算术运算和逻辑运算时应设以下各控制端:ALU-B SW-B S3 S2 S1 S0 M Cn DR1 DR23)输入三态门控制端SW-B和输出三态门控制端ALU-B不能同时为“0”状态,否则存在寄存器中的数据无法准确输出。

4)S3,S2,S1,S0是运算选择控制端,有它们决定运算器执行哪一种运算;M是算术逻辑运算选择,M=0时,执行算术运算,M=1时,执行逻辑运算;Cn是算术运算的进位控制端,Cn=0(低电平),表示有进位,运算时相当于在最低位上加进位1,Cn=1(高电平),表示无进位。

逻辑运算与进位无关;、ALU-B是输出三态门控制端,控制运算器的运算结果是否送到数据总线BUS上。

低电平有效。

SW-B是输入三态门的控制端,控制“INPUT DEVICE”中的8位数据开关D7~D0的数据是否送到数据总线BUS上。

低电平有效。

5)DR1、DR2置数完成后之所以要关闭控制端LDDR1、LDDR2是为了确保输入数据不会丢失。

6)A+B是逻辑运算,控制信号状态000101;A加B是算术运算,控制信号状态100101。

计算机组成原理试题及参考答案

RISC 的主要特征1.选用使用频度较高的一些简单指令,复杂指令的功能由简单指令来组合2.指令长度固定、指令格式种类少、寻址方式少3.只有 LOAD / STORE 指令访存4. CPU 中有多个通用寄存器5.采用流水技术一个时钟周期内完成一条指令6.采用组合逻辑实现控制器7.采用优化的编译程序中断系统需解决的问题1.各中断源如何向 CPU 提出请求?2.各中断源同时提出请求怎么办?3.CPU 什么条件、什么时间、以什么方式响应中断?4.如何保护现场?5.如何寻找入口地址?6.如何恢复现场,如何返回?7.处理中断的过程中又出现新的中断怎么办?1.什么是指令周期?什么是机器周期?什么是时钟周期?三者之间的关系如何?指令周期是完成一条指令所需的时间。

包括取指令、分析指令和执行指令所需的全部时间。

机器周期也称为CPU周期,是指被确定为指令执行过程中的归一化基准时间,通常等于取指时间(或访存时间)。

时钟周期是时钟频率的倒数,也可称为节拍脉冲或T周期,是处理操作的最基本单位。

一个指令周期由若干个机器周期组成,每个机器周期又由若干个时钟周期组成。

1.求十进制数-113的原码表示,反码表示,补码表示和移码表示(用8位二进制表示,并设最高位为符号位,真值为7位)原码反码补码移码2. 下列数中最大的数是_____B_。

A.()2B.(227)8C.(96)16D.(143)10在CPU中,跟踪后继指令地指的寄存器是______。

A.指令寄存器B.程序计数器C.地址寄存器D.状态条件寄存器1.指令和数据均存放在内存中,计算机如何从时间和空间上区分它们是指令还是数据。

时间上讲,取指令事件发生在“取指周期”,取数据事件发生在“执行周期”。

从空间上讲,从内存读出的指令流流向控制器(指令寄存器)。

从内存读出的数据流流向运算器(通用寄存器)。

某计算机的字长16位,它的存储容量是64KB,若按字编址那么它的寻址范围是______。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.这是一个判断某一年是否为润年的程序,运行可执行程序Ifleap.exe后,输入具体的年份,可输出是本年是否为闰年的提示信息。

DATA SEGMENT ;定义数据段INFON DB 0DH,0AH,'PLEASE INPUT A YEAR: $' ;声明空间存储输入提示信息,其中0d回车,0a换行Y DB 0DH,0AH,'THIS IS A LEAP YEAR! $' ;声明空间存储是闰年提示信息,同上另起一行输出N DB 0DH,0AH,'THIS IS NOT A LEAP YEAR! $' ;声明空间存储不是闰年提示信息,同上另起一行输出W DW 0 ;声明空间存储输入年份解析后生成的年份数字BUF DB 8DB ?DB 8 DUP(?) ;声明空间作为缓冲区,总共10个字节,第一个表示准备接受的字DATA ENDSSTACK SEGMENT STACKDB 200 DUP(0)STACK ENDS ;定义一个栈,200字节CODE SEGMENTASSUME DS:DATA,SS:STACK,CS:CODESTART:MOV AX,DATAMOV DS,AX ;指定堆栈LEA DX,INFON ;在屏幕上显示提示信息MOV AH,9INT 21H ;将infon开始的字符串输出到屏幕LEA DX,BUF ;从键盘输入年份字符串MOV AH,10INT 21HMOV CL, [BUF+1] ;获取实际输入长度LEA DI,BUF+2 ;获取字符串首地址CALL DATACATE ;调用子程序,将输入字符串传化为年份数字CALL IFYEARS ;调用子程序,判断是否闰年JC A1 ;如果进位标记C为1则跳转到a1LEA DX,N ;否则输出不是闰年信息MOV AH,9INT 21HJMP EXITA1: LEA DX,Y ;输出是闰年信息MOV AH,9INT 21HEXIT: MOV AH,4CH ;程序结束INT 21HDATACATE PROC NEAR;;指明该子程序在主程序段内PUSH CX; ;备份DEC CXLEA SI,BUF+2 ;将buf中第一个字符(即buf的第三个字节数据)的地址赋给si TT1: INC SI ;循环,使得si指向最后一个字符(即buf中回车符前面的一个) LOOP TT1;LEA SI,CX[DI]POP CX ;回复cxMOV DH,30H ;辅助数据,用来将数字字符对应的ASCII码转换为其代表的数字本身MOV BL,10 ;辅助数据,用来在每进一位时使得ax乘以10MOV AX,1 ;ax用来装对应位的权值L1: PUSH AX ;备份axSUB BYTE PTR [SI],DH ;将单个字符转换为对应的数字MUL BYTE PTR [SI] ;将单个字符转换为对应的数字ADD W,AX ;加到结果上(易知当所有位都加完时,即是我们想要的年份数字)POP AX ;恢复axMUL BL ;权值乘以10DEC SI ;si指向更高一位数字LOOP L1RET ;子程序返回DATACATE ENDPIFYEARS PROC NEAR 指明该子程序段在主程序段内,该子程序用于检测是否是闰年,接收年份数据,改变C标记位表示不同结果1. push bx ;备份bx2. push cx ;备份cx,下面cx用于存储原始年份数据3.push dx ;备份dx,下面dx用于存储除法余数4. mov ax,[w] ;获取年份数据5. mov cx,ax ;将年份数据备份到cx,因为后面做除法时ax值将会改变6. mov dx,0 ;因为被除数要为32字节,高位在dx,本程序中为7. mov bx,100 ;这三行判断是否能被100整除8. div bx9. cmp dx,010. jnz lab1 ;若不能被100整除,跳转到lab111. mov ax,cx ;否则判断能否被400整除12. mov bx,40013. div bx14. cmp dx,015. jz lab2 ;若能表示是闰年,跳转到lab216. clc ;否则不是闰年,将C标记位清零,并跳转到lab317. jmp lab318. lab1: mov ax,cx ;不能被100整除时跳转到此处,进一步判断能否被4整除19. mov dx,020. mov bx,421. div bx22. cmp dx,023. jz lab2 ;若不能被100整除但能能被4整除是闰年,跳转到lab224. clc ;若不能被100整除也不能被4整除不是闰年,将c标志位置0,并跳转到lab325. jmp lab326. lab2: stc ;若是闰年跳转到此处将c标志位置127. lab3: pop dx ;相应寄存器恢复28. pop cx29. pop bx30. ret ;子程序返回31. ifyears endp32.code ends33. end start34.MOV AX,WMOV CX,AXMOV DX,0MOV BX,4DIV BXCMP DX,0JNZ LAB1MOV AX,CXMOV BX,100DIV BXCMP DX,0JNZ LAB2MOV AX,CXMOV BX,400DIV BXCMP DX,0JZ LAB2LAB1: CLCJMP LAB3LAB2: STCLAB3: POP DXPOP CXPOP BXRETIFYEARS ENDPCODE ENDSEND START二.这是一个显示系统日期和时间的程序,运行时,在出现的提示信息中输入大写字母“D”,可显示系统当前日期;输入大写字母“T”,可显示系统当前时间;输入大写字母“Q”,可结束程序。

STACK SEGMENT STACKDW 200 DUP (?)STACK ENDSDATA SEGMENTSPACE DB 1000 DUP (' ')PATTERN DB 6 DUP (' '),0C9H,26 DUP (0CDH),0BBH,6 DUP (' ')DB 6 DUP (' '),0BAH,26 DUP (20H),0BAH,6 DUP (' ')DB 6 DUP (' '),0C8H,26 DUP (0CDH),0BCH,6 DUP (' ') DBUFFER DB 8 DUP (':'),12 DUP (' ')DBUFFER1 DB 20 DUP (' ')STR DB 0DH,0AH, 'PLEASE INPUT DATE(D) OR TIME(T) OR QUIT(Q): $'DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,ES:DATA,SS:STACKSTART: MOV AX,0001H ;设置显示方式为40*25彩色文本方式INT 10HMOV AX,DATAMOV DS,AXMOV ES,AXMOV BP,OFFSET SPACEMOV DX,0B00HMOV CX,1000MOV BX,0040HMOV AX,1300HINT 10HMOV BP,OFFSET PATTERN ;显示矩形条MOV DX,0B00HMOV CX,120MOV BX,004EHMOV AX,1301HINT 10HLEA DX,STR ;显示提示信息MOV AH,9INT 21HMOV AH,1 ;从键盘输入单个字符INT 21HCMP AL,44H ;AL='D'?JNE ACALL DATE ;显示系统日期A: CMP AL,54H ;AL='T'?JNE BCALL TIME ;显示系统时间B: CMP AL,51H ;AL='Q'?JNE STARTMOV AH,4CH ;返回dos状态INT 21HDATE PROC NEAR ;显示日期子程序DISPLAY:MOV AH,2AH ;取日期INT 21HMOV SI,0MOV AX,CXMOV BX,100DIV BLMOV BL,AHCALL BCDASC1 ;日期数值转换成相应的ASCII码字符MOV AL,BLCALL BCDASC1INC SIMOV AL,DHCALL BCDASC1INC SIMOV AL,DLCALL BCDASC1MOV BP,OFFSET DBUFFER1MOV DX,0C0DHMOV CX,20MOV BX,004EHMOV AX,1301HINT 10HMOV AH,02H ;设置光标位置MOV DX,0300HMOV BH,0INT 10HMOV BX,0018HREPEA: MOV CX,0FFFFH ;延时REPEAT1:LOOP REPEAT1DEC BXJNZ REPEAMOV AH,01H ;读键盘缓冲区字符到AL寄存器INT 16HJE DISPLAYJMP STARTMOV AX,4C00HINT 21HRETDATE ENDPTIME PROC NEAR ;显示时间子程序DISPLAY1:MOV SI,0MOV BX,100DIV BLMOV AH,2CH ;取时间INT 21HMOV AL,CHCALL BCDASC ;将时间数值转换成ASCII码字符INC SIMOV AL,CLCALL BCDASCINC SIMOV AL,DHCALL BCDASCMOV BP,OFFSET DBUFFERMOV DX,0C0DHMOV CX,20MOV BX,004EHMOV AX,1301HINT 10HMOV AH,02HMOV DX,0300HMOV BH,0INT 10HMOV BX,0018HRE: MOV CX,0FFFFHREA: LOOP READEC BXJNZ REMOV AH,01HINT 16HJE DISPLAY1JMP STARTMOV AX,4C00HINT 21HRETTIME ENDPBCDASC PROC NEAR ;时间数值转换成ASCII码字符子程序PUSH BXCBWMOV BL,10DIV BLADD AL,'0'MOV DBUFFER[SI],ALINC SIADD AH,'0'MOV DBUFFER[SI],AHINC SIPOP BXRETBCDASC ENDPBCDASC1 PROC NEAR ;日期数值转换成ASCII码字符子程序PUSH BXCBWMOV BL,10DIV BLADD AL,'0'MOV DBUFFER1[SI],ALINC SIADD AH,'0'MOV DBUFFER1[SI],AHINC SIPOP BXRETBCDASC1 ENDPCODE ENDSEND START三.这是一个显示系统时间的程序,运行时,在屏幕的右上角将以“时:分:秒”的形式显示本机系统的时间。

相关文档
最新文档