您现在的位置是: 首页 > 体育赛事 体育赛事

篮球比赛计分器电路设计_篮球比赛计分器汇编语言

tamoadmin 2024-06-18 人已围观

简介1.模拟竞赛枪答 汇编2.用汇编语言有哪些要求?3.急急急!!谁能帮我分析一下这个单片机汇编语言程序,写出每步的作用。急急急!!4.汇编的名词解释5.C语言和汇编语言的区别是什么?1、寄存器32位寄存器有16个,分别是:4个数据寄存器(EAX、EBX、ECX、EDX)。2个变址和指针寄存器(ESI和EDI);2个指针寄存器(ESP和EBP)。6个段寄存器(ES、CS、SS、DS、FS、GS)。1个

1.模拟竞赛枪答 汇编

2.用汇编语言有哪些要求?

3.急急急!!谁能帮我分析一下这个单片机汇编语言程序,写出每步的作用。急急急!!

4.汇编的名词解释

5.C语言和汇编语言的区别是什么?

篮球比赛计分器电路设计_篮球比赛计分器汇编语言

1、寄存器

32位寄存器有16个,分别是:

4个数据寄存器(EAX、EBX、ECX、EDX)。

2个变址和指针寄存器(ESI和EDI);2个指针寄存器(ESP和EBP)。

6个段寄存器(ES、CS、SS、DS、FS、GS)。

1个指令指针寄存器(EIP);1个标志寄存器(EFlags)。

2、数据寄存器

数据寄存器主要用来保存操作数和运算结果等信息,从而节省读取操作数所需占用总线和访问存储器的时间。

32位CPU有4个32位通用寄存器:EAX、EBX、ECX和EDX。对低16位数据的取存,不会影响高16

位的数据,这些低16位寄存器分别命名为AX、BX、CX和DX,它和先前的CPU中的寄存器相一致。

4个16位寄存器又可分割成8个独立的8位寄存器(AX:ah~al、BX:bh~bl、CX:ch~cl:DX:dh~dl)。

每个寄存器都有自己的名称,可独立存取。程序员可利用数据寄存器的这种“可合可分”的特性,灵活地处理字/

字节的信息。

AX和al通常称为累加器,用累加器进行的操作可能需要更少时间,累加器可用于乘、除、输入/输出等操作,

它们的使用频率很高。

BX称为基地址寄存器,它可作为存储器指针来使用。

CX称为计数寄存器,在循环和字符串操作时,要用它来控制循环次数;在位操作中,当移多位时,要用cl来

指明位移的位数。

DX称为数据寄存器,在进行乘、除运算时,它可以为默认的操作数参与运算,也可用于存放I/O的端口地址。

在16位CPU中,AX、BX、CX和DX不能作为基址和变址寄存器来存放存储单元的地址,但在32位CPU

中,其32位寄存器EAX、EBX、ECX和EDX不仅可传送数据、暂存数据、保存算术逻辑运算结果,而且也可

作为指针寄存器,所以,这些32位寄存器更具有通用性。

3、变址寄存器

32位CPU有2个32位通用寄存器ESI和EDI,其低16位对应先前CPU中的SI和DI,对低16位数据的

存取,不影响高16位的数据。

ESI、EDI、SI和DI称为变址寄存器,它们主要用于存放存储单元在段内的偏移量,用它们可实现多种存储器

操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。

变址寄存器不可分割成8位寄存器,作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。

它们可作一般的存储器指针使用,在字符串操作指令的执行过程中,对它们有特定的要求,而且还具有特殊的

功能。

4、指针寄存器

32位CPU有2个32位通用寄存器EBP和ESP,其低16位对应先前CPU中的BP和SP,对低16位数

据的存取,不影响高16位的数据。

EBP、ESP、BP和SP称为指针寄存器,主要用于存放堆栈内存储单元的偏移量,用它们可实现多种存储器

操作数的寻址方式,为以不同的地址形式访问存储单元提供方便。

指针寄存器不可分割成8位寄存器,作为通用寄存器,也可存储算术逻辑运算的操作数和运算结果。

它们主要用于访问堆栈内的存储单元,并且规定:

BP为基指针寄存器,用它可直接存取堆栈中的数据。

SP为堆栈指针寄存器,用它只可访问栈顶。

5、段寄存器

段寄存器是根据内存分段的管理模式而设置的。内存单元的物理地址由段寄存器的值和一个偏移量组合而成

的,这样可用两个较少位数的值组合成一个可访问较大物理空间的内存地址。

32位CPU有6个段寄存器,分别如下:

CS:代码段寄存器? ES:附加段寄存器

DS:数据段寄存器? FS:附加段寄存器

SS:堆栈段寄存器? GS:附件段寄存器

在16位CPU系统中,只有4个段寄存器,所以,程序在任何时刻至多有4个正在使用的段可直接访问,在

32位微机系统中,它有6个段寄存器,所以在此环境下开发的程序最多可同时访问6个段。

32位CPU有两个不同的工作方式:实方式和保护方式。在每种方式下,段寄存器的作用是不同的,有关规定

简单描述如下:

实方式:段寄存器CS、DS、ES和SS与先前CPU中的所对应的段寄存器的含义完全一致,内存单元的逻辑

地址仍为“段地址:偏移地址”的形式,为访问某内存段内的数据,必须使用该段寄存器和存储单元的偏移地址。

保护方式:在此方式下,情况要复杂得多,装入段寄存器的不再是段值,而是称为“选择子”的某个值。

6、指令指针寄存器

32位CPU把指令指针扩展到32位,并记作EIP,EIP的低16位与先前CPU中的IP作用相同。

指令指针EIP、IP是存放下次将要执行的指令在代码段的偏移地址,在具有预取指令功能的系统中,下次要执

行的指令通常已被预取到指令队列中,除非发生转移情况,所以,在理解它们的功能时不考虑存在指令队列的情

况。

在实方式下,由于每个段的最大范围为64KB,所以,EIP的高16位肯定都为0,此时,相当于只用其低16

位的IP来反映程序中的指令的执行次序。

7、标志寄存器

1.运算结果标志位。一共6个,包括:CF进位标志位、PF奇偶标志位、AF辅助进位标志位、ZF零标志位、

SF符号标志位、OF溢出标志位。

2.状态控制标志位。一共3个,包括:TF追踪标志位、IF中断允许标志位、DF方向标志位。

以上标志位在第7章里都讲过了,在这里就不再解释了,现在讲讲32位标志寄存器增加的4个标志位。

1. I/O特权标志IOPL。

IOPL用两位二进制位来表示,也称为I/O特权级字段,该字段指定了要求执行I/O指令的特权级,如果当前

的特权级别在数值上小于等于IOPL的值,那么,该I/O指令可执行,否则将发生一个保护异常。

2. 嵌套任务标志NT。

NT用来控制中断返回指令IRET的执行。具体规定如下:

(1) 当NT=0,用堆栈中保存的值恢复EFlags、CS和EIP,执行常规的中断返回操作。

(2) 当NT=1,通过任务转换实现中断返回。

3. 重启动标志RF。

RF用来控制是否接受调试故障。规定:RF=0时,表示接受,否则拒绝。

4. 虚拟8086方式标志VM。

如果VM=1,表示处理机处于虚拟的8086方式下的工作状态,否则,处理机处于一般保护方式下的工作状态。

8、32位地址的寻址方式

最后说一下32位地址的寻址方式。在前面我们学习了16位地址的寻址方式,一共有5种,在32位微机系统

中,又提供了一种更灵活、方便但也更复杂的内存寻址方式,从而使内存地址的寻址范围得到了进一步扩大。

在用16位寄存器来访问存储单元时,只能使用基地址寄存器(BX和BP)和变址寄存器(SI和DI)来作为

偏移地址的一部分,但在用32位寄存器寻址时,不存在上述限制,所有32位寄存器(EAX、EBX、ECX、

EDX、ESI、EDI、EBP、和ESP)都可以是偏移地址的一个组成部分。

当用32位地址偏移量进行寻址时,偏移地址可分为3部分:

1. 一个32位基址寄存器(EAX、EBX、ECX、EDX、ESI、EDI、EBP、ESP)。

2. 一个可乘以1、2、4、8的32位变址寄存器(EAX、EBX、ECX、EDX、ESI、EDI和EBP)。

3. 一个8位~32位的偏移常量。

比如,指令:mov ebx, [eax+edx*2+300]

Eax就是基址寄存器,edx就是变址寄存器,300H就是偏移常量。

上面那3部分可进行任意组合,省去其中之一或之二。

下面列举几个32位地址寻址指令:

Mov ax, [123456]

Mov eax, [ebx]

Mov ebx, [ecx*2]

Mov ebx, [eax+100]

Mov ebx, [eax*4+200]

Mov ebx, [eax+edx*2]

Mov ebx, [eax+edx*4+300]

Mov ax, [esp]

由于32位寻址方式能使用所有的通用寄存器,所以,和该有效地址相组合的段寄存器也就有新的规定,具体

规定如下:

1. 地址中寄存器的书写顺序决定该寄存器是基址寄存器还是变址寄存器。

如:[ebx+ebp]中的ebx是基址寄存器,ebp是变址寄存器,而[ebp+ebx]中的ebp是基址寄存器,ebx是变

址寄存器,可以看出,左边那个是基址寄存器,另一个是变址寄存器。

2. 默认段寄存器的选用取决于基址寄存器。

3. 基址寄存器是ebp或esp时,默认的段寄存器是SS,否则,默认的段寄存器是DS。

4. 在指令中,如果显式地给出段寄存器,那么显式段寄存器优先。

下面列举几个32位地址寻址指令及其内存操作数的段寄存器。

指令列举:? 访问内存单元所用的段寄存器

mov ax, [123456]? ;默认段寄存器为DS。

mov ax, [ebx+ebp]? ;默认段寄存器为DS。

mov ebx, [ebp+ebx]? ;默认段寄存器为SS。

mov ebx, [eax+100]? ;默认段寄存器为DS。

mov edx, ES:[eax*4+200]? ;显式段寄存器为ES。

mov [esp+edx*2], ax? ;默认段寄存器为SS。

mov ebx, GS:[eax+edx*8+300]? ;显式段寄存器为GS。

mov ax, [esp]? ;默认段寄存器为SS。

模拟竞赛枪答 汇编

****因为格式问题,有些不完整,有电子邮箱吗?我将原题发给你。

第一章 计算机基础知识练习题

1.试将下列二进制数转换成相应的十六进制数和十进制数。

(1)0.1101B (3)101.101B (5)1100010.10101B

(2)1.1011B (4)11010111B (6)1110101.1101B

2.试将下面十进数转换成相应的二进制数和十六进制数。

(1)0.6875 (3)1717.111 (5)1992.49

(2)44.913 (4)240.97 (6)63.786

3.试写出下列真值所对应的机器数。

(1)+1010011B (3)+0101110B

(2)-1011010B (4)-0111100B

4.试写出下列机器所对应的真值。

(1)11000000B (3)01011011B

(2)01111111B (4)11111111B

5.已知X,试求[X]原、[X]反及[X]补。

(1)X=+1001101B (4)X=+1111111B (7)X=-1111111B

(2)X=+0001110B (5)X=1011001B (8)X=-1010101B

(3)X=+1101000B (6)X=-0100111B

6.已知X及Y,试计算[X+Y]补及[X-Y]补并指出是否产生溢出(设补码均用8位表示)。

(1)X=+1001110B,Y=+0010110B (3)X=-0101110B,Y=+0111011B

(2)X=+0101101B,Y=-1100100B (4)X=-1000101B,Y=-0110011B

7.被乘数X,乘数Y均为无符号数,试用部分积右移算法求其乘积Z。

(1)X=1010B,Y=0110B (3)X=0111B,Y=1001B

(2)X=0101B,Y=1101B (4)X=1100B,Y=1111B

8.试述冯.诺依曼型计算机的设计思想。

9.冯.诺依曼型计算机由哪五个功能部件组成?各功能部件的作用如何?

10.何谓“总线”?它有哪几类?它们的主要功能是什么?

11.根据图1说明RAM的读出及写入过程。

12.说明下列各部件的作用:

(1)程序计数器PC (3)指令操作码译码器ID

(2)指令寄存器IR (4)微操作控制电路

13.根据图2试说明控制器的工作原理。

14.不论是指令还是数据均以二进数代码形式存放在存储器中,试问计算机如何知道从存储器取出的是指令还是操作数?

15.设(PC)=01H,(01H)=01011000B。如01011000B为传送指令的机器代码(前四位为操作码,后四位为地址码),其功能是将累加器A的内容送至存储器08H单元。根据图3试说明此指令从取出到执行的全过程。

第二章 MCS-51系列单片计算机练习题

1.为什么称单片机为嵌入式控制器?

2.单片机的系列化是什么意思?

3.MCS-51单片机有哪几种类型?各有什么特点?

4.MCS-51单片机的核心电路是由哪些部分组成?各部分的主要功能是什么?

5.简述PC,PSW,DPTR和累加器A的作用。

6.数据堆栈的特点是什么?堆栈指针SP的地址在哪里?单片机初始化后,把“SP初始化为07H”是什么意思?

7.MCS-51系列单片机片内ROM与片外扩展ROM的存储空间的关系是什么?片内RAM与片外扩展RAM的存储空间的关系是什么?

8.8051的片内RAM分哪三个部分?各部分在使用上有何特点?

9.试写出以下位地址所在的字节地址:20H,7FH,FO,CY,OV。

10.试述8051单片机状态控制字PSW各位的作用。

11.什么叫位寻址?8051有哪些存储空间可以位寻址?

12.试述8051单片机P0~P3端口的地址及端口的含义。

13.单片机“准双向口”是什么意思?

14.定时器/计数器的主要功能是什么?

15.简述8051单片机下列引脚信号的作用: , , , , 。

16.时钟周期,机器周期,指令周期之间有何关系?

17.什么叫取指周期?三字节指令需要执行几个机器周期?

18.单字节双周期指令和双字节单周期指令执行时序有何不同?

19.8051单片机进入内部复位状态的条件是什么?“复位”的含义是什么?

20.8051有哪两种低功耗工作方式?进入和退出掉电方式的条件是什么?

第三章 MCS-51系列单片机扩展技术练习题

1.半导体存储器在微机中的作用是什么?

2.试说明下列名词的含义:字节,字节地址。

3.试述单片机扩展外部存储器的三总线连接方法。

4.简述8031访问外部数据存储器(包括取指操作)的全过程。

5.试述存储器的读周期时序与单片机对外部存储器的读操作时序有什么不同?

6.在图4中:(1)使6116的地址分布为0000H~07FFH,2764的地址分布为4000H~5FFFH,电路应如何连接?(2)若用A15作为译码线,2764和6116的地址分布如何?

7.试画出8031扩展外部32KBSRAM和32KBEPROM(选用27256和62256芯片,实行统一编址)的电路图,并写出每块的地址分布。

8.在图5中,欲使27128的地址分布为2000H~5FFFH,译码线的连接应如何改动?

9.试画出8031扩展外部64KBSRAM和64KBEPROM(选用2764和6264芯片,采用74LS138译码器连接)的电路图,并写出每块芯片的地址分布。

10.试述对EPROM存储器芯片及EPROM型单片机器件的编程条件。

11.为什么说掉电检测电路能使器件尽快进入低功耗状态?

第四章 MCS-51指令系统及程序设计练习题

1.指出下列每一条指令的寻址方式及其完成的操作。

a MOV 2FH,#40H b MOV A,@R1

c MOV A,2FH d MOV 2FH,A

e MOV R1,#2FH

2.内部RAM的4FH单元,可用哪几种方式寻址?分别举例说明。

3.特殊功能寄存器可用哪几种方式寻址?分别举例说明。

4.编程:将立即数55H送入内部RAM的40H单元。

(1)用立即寻址 (3)用寄存器寻址

(2)用直接寻址 (4)用寄存器间接寻址

5.用指令实现下述数据传送

(1)内部RAM20H送内部RAM40H (4)外部RAM2000H送内部RAM20H

(2)外部RAM20H送R0 (5)外部ROM2000H送内部RAM20H

(3)外部RAM20H送内部RAM20H (6)外部ROM2000H送外部RAM20H

6.指出下列指令的执行结果,并写出每条指令的机器码。

a MOV 30H,#52H b MOV R0,#30H

c MOV A,#70H d MOV A,@R0

e MOV A,30H

7.指出在下列各条指令中,45H代表什么?MOV A,#45H

a MOV A,45H b MOV 45H,#45H

c MOV 45H,4 d MOV C,45H

8.分析下列指令的执行结果,并写出每条指令的机器码。

a MOV A,#10H d MOV 20H,#30H

b MOV DPTR,#2020H e MOV R0,#20H

c MOV @DPTR,A f MOVX A,@R0

9.试编程实现内部RAM的25H单元与55单元的数据交换。

10.编程实现外部RAM2040H单元的内容与3040H单元内容互换。

11.分析以下程序的执行过程,并绘出执行过程示意图。

MOV A,#30H MOV DPTR,#4000H

MOV SP,#55H MOV A,#22H

MOV DPTR,#2000H MOVX @DPTR,A

PUSH DPL POP A

PUSH DPH POP DPH

PUSH A POP DPL

12.指出以下程序每一条的执行结果。

MOV A,#25H ADD A,R2

MOV R2,#33H ADDC A,@R1

MOV 40H,#1AH ADDC A,40H

MOV R1,#40H

13.试编程实现两个无符号16位数的减法,被减数和减数分别存放在DATA1和DATA2为首址的内部RAM中,低位在先,高位在后,差存于R3(低8位)和R4(高8位)中。

14.指出以下程序每一条指令的执行结果。

MOV A,#0F0H ORL 30H,#BDH

CPL A XRL 30H,A

ANL 30H,#00H

15.指出以下程序每一条指令的执行结果。设(C)=0。

MOV A,#0AAH CPL A

CPL A RRC A

RLC A RR A

RL A

16.若(A)=7AH,分别执行下列指令后,A的值是多少?标志位CY和OV的值各是什么?

(1)ANL A,#0FFH (4)ORL A,#00H

(2)ORL A,#0FFH (5)XRL A,#0FFH

(3)ANL A,#00H (6)XRL A,#00H

17.若外部RAM的(2000H)=X,(2001H)=Y,编程实现Z=3X+2Y,结果存入内部RAM的20H单元(设Z<255)。

18.在外部RAM的2040H~2043H个存储单元中,存有01,02,03,04四个数,试编程将它们传送到内部RAM的30H~33H单元。

19.试对内部RAM20H单元的内容进行判断,若为正数转向2100H;若为负数转向2200H;若为0转向2300H。

20.若(SP)=25H,(PC)=2345H,标号LABEL代表的地址为3456H,试判断下面两条指令的正确性,并说明原因。

(1)LCALL LABEL (2)ACALL LABEL

21.汇编语言程序设计分哪几个步骤?

22.试分别说明采用高级语言及汇编语言编程的优缺点。

23.采用程序流程图有什么好处?存在哪些不足之处?

24.什么叫“伪指令”?伪指令与指令有什么区别?

25.MCS-51系列单片机有哪几条伪指令?它们的用途是什么?

26.基本程序结构有哪几部分构成?各有什么特点?

27.循环程序由哪几部分构成?若要优化循环程序,首先该优化哪一部分?为什么?

28.何谓“子程序”?对子程序设计有什么要求?何谓子程序的“通用性、可浮动性”?

29.子程序设计分哪几个步骤?设计时的注意事项是什么?

30.何谓“参数传递”?参数传递有哪几种方式?

31.试对下列程序进行人工汇编并用流程图说明此程序的功能。

ORG 2000H ADDC A,@R1

ACADDI: MOV R0,#25H MOV @R1,A

MOV R1,#28H DEC R0

MOV R2,#06H DEC R1

CLR C DLNZ R2,LOOP

CLR A SJMP $

LOOP: MOV A,@R0 END

32.设一带符号的十六位数以补码形式存放在R2,R3寄存器中。试编制求其原码的程序。

33.试编制实现ASCII码转换为十进制数的程序。在8031单片机片内RAM的40H单元中存放一代码,若此代码为十进制数的ASCII码,则将其相应的十进制数送片内RAM50H单元;否则将该单元置成0FFH。

34.设变量X存放在8031单片机片内RAM的24H单元,试编制按照下式的要求给Y赋值(Y为片内RAM的25H单元)的程序。

35.根据下列要求,试分别编制相应的数据块传送程序。

(1)将存放在8031单片机内部RAM中,首址为20H,长度为30H的数据块,传送到片内RAM以40H为首址的连续单元中。

(2)将存放在8031单片机内部RAM中,首址为20H,长度为50H的数据块,传送到片外RAM以20H为首址的单元中。如将目标首址改为片外RAM的1000H,试问程序应作何修改?

36.设有一个不带符号的十六进制数组,存放在8031单片机片内RAM以BUFFER为首址的连续单元中,其长度为30个字节,要求统计小于10、等于10及大于10的数的个数,并将它们分别存放到片内RAM的LESS,EQUAL及LESS单元中,试编制实现上述要求的程序并画出相应的流程图。

37.设有一数组存放在8031单片机内部RAM以FIRST+1为首址的连续单元,其长度存放在FIRST单元中而且不为0。要求统计该数组中正偶数及负奇数的个数并将它们分别存放在PSPE单元及NAOE单元中。试编制实现上述要求的程序并画出相应的流程图。

38.设有50个无符号8位二进制数,存放在8031单片机内部RAM以BOFFER为首地址的连续单元中,试编制将其中最小数存放到内部RAM的MIN单元的程序并画出相应的流程。

39.设有一字符串存放在8031单片机内部RAM以START为首址的连续单元中,字符串是以回车(回车CR=0DH)结束,试编制将该字符串中最后一个非空格字符的地址送内部RAM的LAST单元的程序并画出相应流程图(空格 =20H)。

40.设有两长度均为20H的字符串SA和SB分别存放在单片机内RAM以20H及40H为首址的连续单元中,要求当SA>SB时,将内部RAM的60H单元清0;当SA≤SB时将该单元置全1。试编制实现上述要求的程序并画出相应的流程图。

41.设一字符串存放在8031单片机内部RAM以20H为首址的连续单元中,字符串以回车结束.要求统计该字符串中字符B(B的ASCII码为42H)的个数,并将其存入外部RAM的40H单元中,试编写实现上述要求的程序并画出相应的流程。

42.试编写延时30ms的延时程序。

43.设有三个不带符号的8位二进制数a、b、c分别存放在8031单片机内RAM的30H,31H及32H单元中,要求计算Y=(a+b)2+(b+c)2+(c+a)2(设Y<256),并将结果Y存入内部RAM的33H单元。试用调用子程序的方法编写实现上述要求的程序。

44.设被加数NA及加数NB均为三字节的BCD码,分别存放在8031单片机内部RAM中20H~22H及30H~32H单元中。要求计算两数之和并将其和存放到内部RAM中3FH~42H单元,试编制相应的程序。

45.设有一长度为20H的字符串,存放在8031单片机片内RAM以30H为首地址的连续单元中,试编制将其中数字与字母分开并将它们分别送到以50H和70H为首地址的连续单元中的程序。

46.设在片内RAM的20H单元中存放一数码,其值范围为0~200,要求用查表法求此数的平方值并将结果存入片外RAM的20H,21H单元中,试编制相应的程序。

47.设某班级共有学生三十名,本学期考四门课程,分别为高等数学、普通物理、英语及马列主义哲学,所有学生各门课程的成绩均为己知,要求将某学生(该学生的学号已键入至累加器A中)的上述四门课程成绩依次存入片内RAM的30H~33H单元,试编写相应的程序。

48.设在8031单片机外部RAM从1000H单元开始存放100个无符号8位二进制数,要求将它们从小到大依次存入片内RAM从10H单元开始的存储器中,试编制相应的程序并画出其流程图。

第五章 中断系统练习题

1.名词解释

(1)中断 (3)中断系统 (5)中断嵌套

(2)中断源 (4)中断优先(级) (6)中断屏蔽

2.试述中断的作用及中断的全过程。

3.利用中断方式进行数据传送能否节省数据传送的时间?为什么?

4.软件排队判优和硬件排队判优各有什么优缺点?

5.当正在执行某一中断源的中断服务程序时,如果有新的中断请求出现,试问在什么情况下可响应新的中断请求?在什么情况下不能响应新的中断请求?

6.在8031单片机中有哪几个中断源?有几个中断优先级?中断系统按什么顺序响应各中断源的中断请求?

7.在MCS-51系列单片机中,外部中断源有几种触发中断请求的方法?如何实现中断请求?

8.在8031单片机应用系统中有8个外部中断源,此时如有中断请求怎样通知单片机?8031单片机又如何为它们服务?试画出所需硬件框图及处理程序的流程。

9.在MCS-51系列单片机中各中断源的中断处理程序的入口地址是否可由用户直接指定?当中断源的中断处理程序的长度大于8个字节时应作如何处理?

10.在中断处理程序中如PUSH,POP指令不是成对使用时,能否返回断点?为什么?

第六章 微机的输入/输出练习题

1.I/O接口电路的作用是什么?什么叫端口?它的作用是什么?

2.I/O寻址方式有哪几种?各有什么优缺点?MCS-51系列单片机采用哪种寻址方式?

3.主机与外部设备的数据传送方式有哪几种?试说明它们的各自的优缺点并指出各种数据传送方式的适用场合。

4.试利用8031单片机内部的定时器/计数器实现半分钟的定时。

5.设单片机的时钟频率为12MHz,若内部RAM的30H单元中的内容为55H,则内部定时器的定时值为30ms;否则定时值为15ms,试根据此要求对内部定时器进行初始化。

6.有一方波发生器,其频率为5KHz~10KHz范围内连续可调,要求显示方波发生器输出方波的周期,试设计显示接口并编写相应的程序。

第七章 微机的常用输入/输出设备练习题

1.设有一键盘,其输出的按键ASCII码通过图6的接口送至8031单片机,现键入一命令字(由6个字符所组成),要求将此命令存入在内部RAM以20H为首地址的连续单元中。试按此要求编写相应的程序。

2.根据图7所示的接口电路,要求将8031单片机内部RAM中以30H为首地址的连续30H个单元中的数据输至外设。试按上述要求编写相应的程序。

3.有一采用8255A芯片的接口电路,用它的PA口作输入,在其每根口线上接一个按钮开关;PB口作输出,在其每根口线上接一个驱动器驱动LED,按钮开关与LED一一对应,要求当某开关按下时,相应位的LED亮1秒钟,试根据上述要求画出接口电路并编写相应的程序。

4.若上题中PB口通过驱动器与一七段LED显示器相连,要求当8个开关的状态为10100110B时,七段LED显示器显示8;当按键开关处于其它状态时,则显示0。试编制相应的程序。

5.根据下述要求设计打印机接口;要求:(1)用8255A芯片将主机与打印机连接且主机与打印机之间采用中断方式进行数据传送;(2)将内部RAM中以40H为首地址的连续100个单元中的内容打印输出。

6.单片机应用系统采用图8所示的接口电路,8155的PA口作输出口,PB口作输入口,TIMERIN输入脉冲,其周期为1?s,TIMEROUT输出连续方波,其周期为2ms,试对8155A初始化编程。

7.设在8031单片机内部RAM的45H单元中存放一无符号数,若该单元的内容小于或等于9,则要求图9中的LED亮1秒钟,若该单元内容大于9且小于16时LED亮3秒钟,若该单元内容大于等于16时LED不亮,试编制相应的程序。

8.要求将存放在8031单片机内部RAM中30H及31H单元中的四位BCD码在图10所示的接口电路中从右到左显示出来,试编写相应的程序。

9.要求在图11的动态扫描显示器中进行8字闪烁显示。即6个显示器同时显示“8”1秒,暗1秒,不断重复,试编写相应的程序。

10.根据图11试编写七段LED显示器的测试程序(即用软件测试每一个七段LED的好坏,该亮的段应亮,该暗的段应暗)。

11.设在8031单片机内RAM的50H单元中存放一个ASCII码。若其内容为0~9的ASCII码,则在图11所示的接口电路中从左到右不断地依次显示8;否则不断地依次显示4。

12.根据图12所示的拨盘接口,要求将这4片拨盘所输入的数据从左到右的次序存入内部RAM以50H为首地址的连续4个单元中,试按此要求编写相应的程序。

第八章 过程I/O通道练习题

1.什么叫模拟量?什么叫数字量?它们之间相互转换的过程如何?

2.试述T型解码网络D/A转换器的基本工作原理。

3.10位数字量输入的D/A转换器满量程为5V时,1 LSB对应的模拟量变化是多少?

4.线性误差和分辨率都可以用LSB来表示,在这两种情况下,它们的含义有何区别?

5.试述DAC0832的内部结构,它如何实现输入数字量的二级缓冲?

6.在数模转换器中,参考电压VREF和工作电压VCC的本质区别是什么?

7.试画出8031与DAC0832单缓冲连接的第三种电路(除书中介绍的两种以外),并采用8位地址编程:把内部RAM的30H单元内容输出转换。

8.按图13编写同时进行两路数/模转换输出的程序段,设需要转换的数据在内部RAM的DATA1和DATA2存储单元中。

9.现有参考电压VREF=+5V,欲通过D/A转换获得约+5V(+4.98V)的输出电压,应采用何种连接电路?转换的数字量应是多少?

10.参照图14编程产生如图所示的阶梯波波形,设△t=1ms,△V=10mV,阶梯波的级数N=10。

11.试述逐位比较法A/D转换器的基本工作原理。

12.ADC0809与DAC0832的参考电压在转换中的作用有何不同?

13.参照图8-21,使用8031内部定时器产生定时,每一秒采集一路模拟信号,试写出对8路模拟信号顺序采集一次的程序。

14.电路同上题,但只对通道0采集一次,设采集的模拟信号为0~600℃的温度值(输入信号0~5V的电压值)。试将采集后的数据转变成对应的温度值,并存入以DARA为首址(在内部RAM中)的存储单元中。

15.参照图8-21,编程采集(软件延时)通道0的输入模拟量,连续采集5次,计算其平均值,若平均值大于80H,或小于20H,则从P1.2口线输出“1”,否则,该口线输出“0”。

16.参照图8-21,采用查询方式,编写采集64次模拟量的程序段,采集的数据放入以R0为间接地址的内部数据存储区。

17.利用D/A转换器产生一正向增长的锯齿波,要求周期为10ms(由软件延时获得),试编写此程序段。

18.试画出8031与一片DAC0832,一片ADC0809的连接电路,并编程采集通道7的模拟量,将其除2后,再通过0832转换输出。

19.为提高模/数转换装置的性能,通常可以采取哪些技术措施?

20.异步串行通信和同步串行通信的主要区别是什么?

21.简述UART的主要功能。

22.试述UART在异步串行通信方式下接收数据的字符同步过程。

23.简述MCS-51串行口的外部特征及内部主要组成。

24.试述MCS-51串行口在四种工作方式下的字符格式。

25.试述在串行口控制寄存器SCON中,TB8和RB8的作用以及它们在不同方式下的装载过程。

26.试述串行口在四种工作方式下发送和接收数据的基本条件。

27.试述串行口四种工作方式波特率的产生方式。

28.试用查询方式编写一数据块发送程序,数据块首址为内部RAM的30H单元,其长度为20个字节,设串行口工作于方式1,传送的波特率为9600 bps(主频为6MHz),不进行奇偶检验处理。

29.试用查询方式编写一程序:从串行口接收10H个字符,放入以2000H为首址的外部RAM区,串行口工作于方式1,波特率2400 bps(不采用子程序调用方式编写此程序)。

30.试用中断方式编写一数据程序接收程序:接收区首址为内部RAM的20单元,接收的数据为ASCII码,设串行口工作于方式1,波特率设定为1200bps,接收时对奇偶检验不作出错处理,但需删除。

第九章 8086简介练习题

1.为什么8086MPU要采用地址/数据分时复用,它有什么好处?

2.用8086MPU组成微型计算机系统时,为什么要用地址锁存器和数据放大器,它们的主要功能是什么?

3.描述一下8086微处理器是怎样把一个字节数送到奇地址及偶地址的存储单元中去的,当要送一个字时,又是怎能样进行的呢?

4.INC,DEC指令是加法和减法指令,但它们却被8086设计师设计成不影响进位标志,为什么?

5.8086MPU内部分成哪两大部件,它们各自的组成和功能是什么?

6.8086MPU的寄存器结构是怎样的?为什么采用使某些寄存器专用某些指令的结构?

7.堆栈的工作原理是什么?试用一叠盘子体会一下放入和取出的操作。

8.8086MPU预取指令队列有什么好处?用例子简述预取指令机构的工作情况。

9.试给出8086MPU执行完下列指令后,各种标志的状态。

(1)MOV AX,2345H (2)MOV AX,5439H

ADD AX,3219H ADD AX,456AH

10.标志寄存器FLAG中包括几个标志位?各位的状态含义及用途如何?

11.8086系统中,存储器的物理(实际)地址由哪两部分组成?又是如何形成的?存储器中的每一个段与寄存器之间有何对应要求?

12.试说明8086指令格式中MOD的含义。

13.设(BX)=637DH,(SI)=2A9BH,位移量=4237H,试确定这些寄存器和下列寻址方式产生的有效地址:

(1)立即方式 (5)用BX的寄存器相对方式

(2)直接方式 (6)基址变址方式

(3)用BX的寄存器方式 (7)相对基址变址方式

(4)用BX的寄存器间接方式

14.指出下列各条指令中源操作数和目的操作数的寻址方式

(1)OR AX,AX (2)MOV AH,0FFH

(3)ADD AX,[BX][DI] (4)IN AL,n

(5)JMP OPRD

15.设(IP)=2BC0H,(CS)=0200H,位移量=5119H,(BX)=1200H,(DS)=212AH,(224A0H)=0600H,(275B9H)=098AH,求使用下列寻址方式的转移地址:

(1)段内直接寻址方式

(2)使用BX寄存器和寄存器寻址方式的段内间接寻址方式。

(3)使用BX寄存器和寄存器相对地址的段内间接寻址方式。

16.参考8086指令格式,给出下列指令的机器语言代码:

(1)BX的内容加到DX的内容上去,结果放在DX中。

(2)用BX寄存器和SI寄存器,通过基址变址寻址方式将存储器中的一个字节加到(AL)上,然后把结果放到AL中。

(3)用寄存器BX和B2H以及寄存器相对寻址把一个存储单元的内容加到(CX)上去,然后把结果送回该存储单元。

(4)用0524H和直接寻址方式将2A59H加到一个存储单元的内容上去,并把和数放回该存储单元。

17.阅读下列程序,然后回答问题:

BEGIN: IN AL,20H ADLP: ADD AL,BL

MOVF BL,AL ADC AH,0

IN AL,30H DEC CL

MOV CL,AL JNZ ADLP

MOV AX,0 HLP

本程序执行什么操作?执行结果存放在什么地方?

18.说明“AND AX,OPRD1 AND OPRD2”中两个AND各自的作用是什么?

19.若在数据段中已定义 LAB DB 30H,47H,86H…

试问(1)指令MOV AX,LAB 正确否?为什么?

(2)如何对上述指令进行修改,使它正确?

20.指令语句“MOV BL,LAB”和指令语句“LEA BX,LAB”有何区别?

****因为格式问题,有些不完整,有电子邮箱吗?我将原题发给你。

用汇编语言有哪些要求?

1.前言

1. 1

工厂、学校和电视台等单位常举办各种智力竞赛, 抢答记分器是必要设备。在我校举行的各种竞赛中我们经常看到有抢答的环节,举办方多数采用让选手通过举答题板的方法判断选手的答题权,这在某种程度上会因为主持人的主观误断造成比赛的不公平性。为解决这个问题,我们小组准备就本次大赛的机会制作一个低成本但又能满足学校需要的八路数显抢答器。本课程设计是“模拟电子技术”与“数字电子技术”两门课程的综合课程设计。

1. 2

本课程设计旨在培养学生综合模拟、数字电路知识,解决电子信息方面常见实际问题的能力,掌握一般电子电路设计方法与设计步骤。促使学生积累实际电子制作经验,准备走向更复杂更实用的应用领域,是参加“全国大学生电子竞赛”前的理论与实践相结合的综合技能训练。目的在于巩固基础、注重设计、培养技能、追求创新、走向实用。

1.3主要功能介绍

1.3.1抢答器最多可供8名选手参赛,编号为1~8号,各队分别用一个按钮(分别为S1~S8)控制,并设置一个系统清零和抢答控制开关S,该开关由主持人控制。

1.3.2抢答器具有数据锁存功能,并将锁存数据用LED数码管显示出来,同时蜂鸣器发出间歇式声响(持续时间为1秒),主持人清零后,声音提示停止。

1.3.3 抢答先后的分辨率为5ms。

1.3.4 关S作为清零及抢答控制开关(由主持人控制),当开关S被按下时抢答电路清 零,松开后则允许抢答。输入抢答信号由抢答按钮开关S1~S8实现。

1.3.5 有抢答信号输入(开关S1~S8中的任意一个开关被按下)时,并显示出相 对应的组别号码。此时再按其他任何一个抢答器开关均无效,指示灯依旧“保持” 第一个开关按下时所对应的状态不变。

2.总体方案设计

2.1方案一:

如图1所示为总体方框图。其工作原理为:接通电源后,主持人将开关拨到"清零"状态,抢答器处于禁止状态,编号显示器灭灯,定时器显示设定时间;主持人将开关置;开始"状态,宣布"开始"抢答器工作。定时器倒计时,扬声器给出声响提示。选手在定时时间内抢答时,抢答器完成:优先判断、编号锁存、编号显示、扬声器提示。当一轮抢答之后,定时器停止、禁止二次抢答、定时器显示剩余时间。如果再次抢答必须由主持人再次操作"清除"和"开始"状态开关。

2.2方案二

实验电路原理方框图如图所示。该电路作为抢答信号的接收、保持和输出的基本电路,手动清零开关CR,S1~S8为抢答按钮开关。

本抢答器可同时供8名选手或8个代表队比赛,分别用8个开关S1~S8表示。同时设置一个系统清除和抢答控制开关,该开关由裁判控制。此抢答器应具有数据锁存功能与显示功能。即选手按动按钮,锁存相应的编号,并在数码管上显示,同时蜂鸣器发出报警声响提示。选答实行优先锁存,优先抢答选手的编号一直保持到裁判将系统清零为止。

2.3方案比较

通过对方案一和方案二的比较可以看出,并且增加了控制电路,是电路图简单明了,避免重复,控制起来更加方便。抢答器队参赛选手的动作的先后有很强的分辨力,即使先后只相差几毫秒,抢答器也能分辨出来,抢答器直线实现动作选手的编号,并保持到主持人清零为止。

2.4方案论证

2.5方案选择

通过对比,最终选择方案一

3单元模块设计

3.1抢答器电路

3.1.1抢答器电路图方框图

3.1.2抢答器电路图设计及电路功能介绍

设计电路见附录图3.1.2所示。电路选用优先编码器 74LS148 和锁存器 74LS279 来完成。该电路主要完成两个功能:一是分辨出选手按键的先后,并锁存优先抢答者的编号,同时译码显示电路显示编号(显示电路采用七段数字数码显示管);二是禁止其他选手按键,其按键操作无效。工作过程:开关S置于"清除"端时,RS触发器的 R、S端均为0,4个触发器输出置0,使74LS148的优先编码工作标志端(图中5号端)=0,使之处于工作状态。当开关S置于"开始"时,抢答器处于等待工作状态,当有选手将抢答按键按下时(如按下S5),74LS148的输出经RS锁存后,CTR=1,RBO(图中4端) =1,七段显示电路74LS48处于工作状态,4Q3Q2Q=101,经译码显示为“5”。此外,CTR=1,使74LS148 优先编码工作标志端(图中5号端)=1,处于禁止状态,封锁其他按键的输入。当按键松开即按下时,74LS148的 此时由于仍为CTR=1,使优先编码工作标志端(图中5号端)=1,所以74LS148仍处于禁止状态,确保不会出二次按键时输入信号,保证了抢答者的优先性。如有再次抢答需由主持人将S开关重新置“清除”然后再进行下一轮抢答。

3.2可预致时间的定时电路

3.2.1可预致时间的定时电路方框图

3.2.2可预致时间的定时电路图设计及电路功能介绍

原理及设计:该部分主要由555定时器秒脉冲产生电路、十进制同步加减计数器74LS192减法计数电路、74LS48译码电路和2个7段数码管即相关电路组成。具体电路如图3所示。两块74LS192实现减法计数,通过译码电路74LS48显示到数码管上,其时钟信号由时钟产生电路提供。74192的预置数控制端实现预置数,由节目主持人根据抢答题的难易程度,设定一次抢答的时间,通过预置时间电路对计数器进行预置,计数器的时钟脉冲由秒脉冲电路提供。按键弹起后,计数器开始减法计数工作,并将时间显示在共阴极七段数码显示管DPY_7-SEG 上,当有人抢答时,停止计数并显示此时的倒计时时间;如果没有人抢答,且倒计时时间到时, 输出低电平到时序控制电路,控制报警电路报警,同时以后选答无效。下面结合图4具体讲一下标准秒脉冲产生电路的原理。结合图4,图中电容C的放电时间和充电时间分别为

, 于是从NE555的3端输出的脉冲的频率为

,结合我们的实际经验及考虑到元器件的成本,我们选择的电阻值为R1=15K,R2=68K,C=10uF,代入到上式中即得 ,即秒脉冲。

3.2.3控制电路和报警电路

由555 芯片构成多谐振荡电路 ,555 的输出信号再经三极管放大 ,从而推动扬声器发声

控制电路包括时序和报警两个电路 ,如图5 所示。控制电路需具有以下几个功能。

主持人闭合开关扬声器发声 ,多路抢答器电路和计时电路进入正常状态; 参赛者按键时 ,扬声器发声 ,抢答电路和计时电路停止工作;

抢答时间到 ,无人抢答 ,扬声器发声 ,抢答电路和计时电路停止工作

3.2.4电源电路

3.3电路参数的计算及元器件的选择

3.3.1电路参数的计算

3.3.2元器件的选择

4软件设计

4.1软件设计原理及设计所用工具

4.2主要软件设计流程框图

4.3功能介绍

5特殊器件介绍

5.1 74LS148为8线-3线优先编码器,表5.1.1为其真值表,表5.1.2为其功能表,图5.1.1为其管脚图,图5.1.2为其电路图。

表5.1.1 74LS148 8线—3线二进制编码器真值表

输 入 输 出

A7 A6 A5 A4 A3 A2 A1 A0 Y2 Y1 Y0

0 0 0 0 0 0 0 1 0 0 0 0 0 0 1 00 0 0 0 0 1 0 00 0 0 0 1 0 0 00 0 0 1 0 0 0 00 0 1 0 0 0 0 00 1 0 0 0 0 0 01 0 0 0 0 0 0 0 0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

表5.1.2 74LS148 8线—3线二进制编码器功能表

图5.1.2 74LS148电路图 图5.1.1 74LS148管脚图

74LS148工作原理如下:

该编码器有8个信号输入端,3个二进制码输出端。此外,电路还设置了输入使能端EI,输出使能端EO和优先编码工作状态标志GS。

当EI=0时,编码器工作;而当EI=1时,则不论8个输入端为何种状态,3个输出端均为高电平,且优先标志端和输出使能端均为高电平,编码器处于非工作状态。这种情况被称为输入低电平有效,输出也为低电来有效的情况。当EI为0,且至少有一个输入端有编码请求信号(逻辑0)时,优先编码工作状态标志GS为0。表明编码器处于工作状态,否则为1。由功能表可知,在8个输入端均无低电平输入信号和只有输入0端(优先级别最低位)有低电平输入时,A2A1A0均为111,出现了输入条件不同而输出代码相同的情况,这可由GS的状态加以区别,当GS=1时,表示8个输入端均无低电平输入,此时A2A1A0=111为非编码输出;GS=0时,A2A1A0=111表示响应输入0端为低电平时的输出代码(编码输出)。EO只有在EI为0,且所有输入端都为1时,输出为0,它可与另一片同样器件的EI连接,以便组成更多输入端的优先编码器。

74LS148功能表

从功能表不难看出,输入优先级别的次为7,6,……,0。输入有效信号为低电平,当某一输入端有低电平输入,且比它优先级别高的输入端无低电平输入时,输出端才输出相对应的输入端的代码。例如5为0。且优先级别比它高的输入6和输入7均为1时,输出代码为010,这就是优先编码器的工作原理

5.2 锁存器74LS279

原理:在74ls279中,由于4回路中2回路置位端子为两个,所以使用其一时,整理两个置位输入作为1个使用,或将另一个输入固定为“H”使用。另外,作为稍化74LS279 的使用方法,也可将3组作为RS锁存器使用,剩余的RS锁存器作为2输入NAND门电路使用,复位输入例如①管脚固定为”L”时其输入为”H”,所以可构成将②和③作为输入,输出为④的2输入NAND,此变换如图2所示。

图5-6 74LS279管脚引线图

5.3中规模集成BCD七段显示译码驱动器

译码与编码是相反的过程,是将二进制代码表示的特定含义翻译出来的过程。能实现译码功能的组合逻辑电路称为译码器。

集成译码器可分为三种,即:二进制译码器、二-十进制译码器和显示译码器。

二进制译码器是将输入的二进制代码的各种状态按特定含义翻译成对应输出信号的电路。也称为变量译码器。若输入端有n位,代码组合就有2n个,当然可译出2n个输出信号。

显示译码器由译码输出和显示器配合使用,最常用的是BCD七段译码器。其输出是驱动七段字形的七个信号,常见产品型号有74LS48、74LS47等。

字符显示器:分段式显示是将字符由分布在同一平面上的若干段发光笔划组成。电子计算器,数字万用表等显示器都是显示分段式数字。而LED数码显示器是最常见的。通常有红、绿、黄等颜色。LED的死区电压较高,工作电压大约1.5~3V,驱动电流为几十毫安。图5-2是七段LED数码管的引线图和显示数字情况。74LS47译码驱动器输出是低电平有效,所以配接的数码管须采用共阳极接法;而74LS48译码驱动器输出是高电平有效,所以,配接的数码管须采用共阴极接法。数码管常用型号有BS201、BS202等。图5-3(a)是共阴式LED数码管的原理图,使用时,公阴极接地,7个阳极a~g由相应的BCD七段译码器来驱动,如图5-3(b)所示。

(a)引线图 (b)七段字形组合情况

图5-2 七段LED数码管

图5-3 共阴式LED数码管的原理图和驱动电路

上面提到,74LS48是输出高电平有效的中规模集成BCD七段显示译码驱动器,它的功能简图和管脚引线图如图5-4所示。其真值表见表5-2所示。

表5-2 74LS48BCD七段译码驱动器真值表

十进制数或功能 输 入 输 出

A3 A2 A1 A0 a b c d e f g

0 1 1 0 0 0 0 1 1 1 1 1 1 1 0

1 1 × 0 0 0 1 1 0 1 1 0 0 0 0

2 1 × 0 0 1 0 1 1 1 0 1 1 0 1

3 1 × 0 0 1 1 1 1 1 1 1 0 0 1

4 1 × 0 1 0 0 1 0 1 1 0 0 1 1

5 1 × 0 1 0 1 1 1 0 1 1 0 1 1

6 1 × 0 1 1 0 1 0 0 1 1 1 1 1

7 1 × 0 1 1 1 1 1 1 1 0 0 0 0

8 1 × 1 0 0 0 1 1 1 1 1 1 1 1

9 1 × 1 0 0 1 1 1 1 1 0 0 1 1

10 1 × 1 0 1 0 1 0 0 0 1 1 0 1

11 1 × 1 0 1 1 1 0 0 1 1 0 0 1

12 1 × 1 1 0 0 1 0 1 0 0 0 1 1

13 1 × 1 1 0 1 1 1 0 0 1 0 1 1

14 1 × 1 1 1 0 1 0 0 0 1 1 1 1

15 1 × 1 1 1 1 1 0 0 0 0 0 0 0

灭灯 × × × × × × 0 0 0 0 0 0 0 0

灭零 1 0 0 0 0 0 0 0 0 0 0 0 0 0

试灯 0 × × × × × 1 1 1 1 1 1 1 1

74LS48的输入端是四位二进制信号(8421BCD码),a、b、c、d、e、f、g是七段译码器的输出驱动信号,高电平有效。可直接驱动共阴极七段数码管, 是使能端,起辅助控制作用。

使能端的作用如下:

(1) 是试灯输入端,当 =0, =1时,不管其它输入是什么状态,a~g

七段全亮;

(2)灭灯输入 ,当 =0,不论其它输入状态如何,a~g均为0,显示管熄灭;

(3)动态灭零输入 ,当 =1, =0时,

如果 =0000时,a~g均为各段熄灭;

(4) 动态灭零输出 ,它与灭灯输入 共用一个引出端。当 =0或 =0且 =1, =0000时,输出才为0。片间

与 配合,可用于熄灭多位数字前后所不需要显示的零。

74LS48功能简图 74LS48管脚引线

6系统调试

把上面所设计的单元电路连接起来可得到整机电路。然后可在印刷电路板上焊接分立元件并进行调

试。在调试的过程中可能会遇到由于逻辑门传输延时的存在而带来的竞争冒险问题 ,主要表现在当按键

大于8 时 ,在连续按键的情况下大约有10 %的可能性误显示为 8 ,

1. 测试使用的主要的仪器和仪表是万用表。

2. 调试电路的方法和技巧是用红黑表笔测试接电源处是否有电压显示,再用表笔分别测试各集成块和电阻,电容的电压,注意用手背触摸一下,检查各仪器是否发热工作,。

3. 测试的数据电压显示为6.69伏等。

4. 调试中出现的故障,原因及排除方法有的电阻焊接为虚焊,原因是检查发生漏洞,排除方法是再焊接;74LS148接地引角8不为零,可能焊连,去掉焊连部分。

急急急!!谁能帮我分析一下这个单片机汇编语言程序,写出每步的作用。急急急!!

优缺点

优点

1、因为用汇编语言设计的程序最终被转 换成机器指令,故能够保持机器语言的一 致性,直接、简捷,并能像机器指令一样 访问、控制计算机的各种硬件设备,如磁 盘、存储器、CPU、I/O端口等。使用汇编 语言,可以访问所有能够被访问的软、硬 件资源。

2、目标代码简短,

度快,是高效的程序设计语言,经常与高 级语言配合使用,

和效率,弥补高级语言在硬件控制方面的 不足,应用十分广泛。

缺点

1、汇编语言是面向机器的,处于整个计 算机语言层次结构的底层,故被视为一种 低级语言,通常是为特定的计算机或系列 计算机专门设计的。不同的处理器有不同 的汇编语言语法和编译器,编译的程序无 法在不同的处理器上执行,缺乏可移植性

2、难于从汇编语言代码上理解程序设计 意图,可维护性差,即使是完成简单的工 作也需要大量的汇编语言代码,很容易产 生bug,难于调试;

3、使用汇编语言必须对某种处理器非常 了解,而且只能针对特定的体系结构和处 理器进行优化,开发效率很低,周期长且 单调。

汇编的名词解释

虽然没有楼上动作快,但既然也做了就发上来参考吧,应该比楼上的更具体写,比如P1.5干嘛啊。 :)

__________________________________________________________________

整体描述:同时在P1.0 和 P1.1输出反相的占空可调的方波

占空比调整通过修改变量M 来设定,变量AS用来做内部循环量,范围0-M

P1.5使用闪烁的方式来显示对于M设定的占空比值的非法告警

调整占空比设定M通过int0 和P1.2来 进行加一和减一的设定 ,通过int1 和P1.2来 进行加五和减五的设定

设定的M值通过连接在P0,P2口的两个LED来显示,方式10进制单位显示

COUNT EQU 30H //没用的变量

AS EQU 30H //timer1内占空比计数

M EQU 35H //占空比计数上限设定

ORG 0000H

LJMP START

ORG 0003H //int0中断服务入口 占空比1步进

LJMP INT00

ORG 0013H //int1中断服务入口 占空比5步进

LJMP INT11

START: SETB EX0 //初始化开始

SETB PX0

SETB IT0

SETB EX1

CLR PX1

SETB IT1

SETB EA

CLR P1.5 //P1.5显示设定占空比数字非法时闪烁告警

MOV TMOD,#21H //使用timer0 模式1和timer1 模式2

MOV TH1,#38H //timer1做占空部分控制,即高低电平时间控制

MOV TH0,#0B1H //timer0做方波周期

MOV TL0,#0E0H

SETB TR0

SETB TR1

MOV DPTR,#TABLE //LED段码地址

MOV M,#50 //占空比上限初值

MOV P0,#3FH //占空比10进低位 LED段码

MOV P2,#6DH //占空比10进高位 LED段码

MOV AS,#0 //占空比计数变量

TOP:SETB TR1 //**新的一个方波周期从这里开始**

SETB P1.0 //P1.0和P1.1分别输出反相的等周期方波

CLR P1.1 //

MOV TH0,#0B1H //timer0计数值、即方波周期值设定

MOV TL0,#0E0H

MOV AS,#0 //高电平时间计数变量初值每个timer1溢出加一(最大等于M)

MOV B,#10 //没用

MOV A,M

MOV B,#100

DIV AB

JZ TIME1 //如果设定的M值在01-99(可以理解为可接受的值,占空比最少1:99最多99:1)

MOV B,#10

CLERK:SETB P1.5 //设定的占空比值非法,则闪烁P1.5告警

LCALL DELAY

CLR P1.5

LCALL DELAY

SETB P1.5

LCALL DELAY

CLR P1.5

MOV M,#50 //自动重新设定默认占空比

LCALL SHOW //LED显示M,即当前设定占空比的值

LJMP TOP //重新 开始新懂得方波周期

TIME1:JBC TF1,NEXT //等待timer1 溢出标志

SJMP TIME1

NEXT:INC AS //每次溢出变量AS加一,

MOV A,M

CJNE A,AS,TIME1 //直到AS=M ,即占空计数达到,

CLR P1.0 //波形反相

SETB P1.1

CLR TR1 //关闭timer1,波形在timer0控制的一个周期内不再变化

TIME0:JBC TF0,TOP

SJMP TIME0 //timer0溢出,开始下一个周期波形

INT00:JNB P1.2,LOOP1 //外部中断0中断处理

INC M //当int0 为低电平且P1.2为高则M增加1,每次机器响应int0都加一,直到int0消失

LCALL SHOW //LED显示M,即当前设定占空比的值

RETI

LOOP1:DEC M //当int0 为低电平且P1.2为低则M减1,每次机器响应int0都减一,直到int0消失

LCALL SHOW //LED显示M

RETI

INT11:JNB P1.2,LOOP //外部中断1中断处理

MOV A,M

ADD A,#5 //当int1 为低电平且P1.2为高则M增加5,每次机器响应int0都加五,直到int0消失

MOV M,A

LCALL SHOW //LED显示M

RETI

LOOP:MOV A,M

SUBB A,#5 //当int1 为低电平且P1.2为高则M减少5,每次机器响应int0都减五,直到int0消失

MOV M,A

LCALL SHOW //LED显示M

RETI

SHOW:MOV A,M //M /10 AB 内分别是商和余数

MOV B,#10

DIV AB

MOVC A,@A+DPTR //查表显示余数

MOV P2,A

MOV A,B

MOVC A,@A+DPTR //查表显示商

MOV P0,A

MOV B,#10 //没用

RET

DELAY:MOV R6,#0FFH //延时函数

DEY1:MOV R7,#0FFH

DEY2:MOV R5,#3

DJNZ R5,$

DJNZ R7,DEY2

DJNZ R6,DEY1

RET //延时结束

TABLE:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH //LED段码表

END

C语言和汇编语言的区别是什么?

汇编的意思是什么呢?怎么用来造句?下面是我为你整理汇编的意思,欣赏和精选造句,供大家阅览!

汇编的意思

汇编拼音:huì biān大多是指组合语言Assembly Language,汇编程式。把组合语言翻译成机器语言的过程称为汇编。在组合语言中,用助记符Memoni代替操作码,用地址符号Symbol或标号Label代替地址码。这样用符号代替机器语言的二进位制码,就把机器语言变成了组合语言。于是组合语言亦称为符号语言。用汇编语言编写的程式,机器不能直接识别,要由一种程式将组合语言翻译成机器语言,这种起翻译作用的程式叫汇编程式,汇编程式是系统软体中语言处理的系统软体。

1.动词,把资料或文章等编辑在一起

2.名词,编辑在一起的资料,文献

3.名词,一种计算机语言

汇编造句欣赏

1、依靠"耳朵"这个无孔不入的网路,他定期汇编情报档案,甚至是最捕风捉影的传闻都收录在内,并在各色资讯中搜索匹配项。

2、笑话、笑料的题材,比比皆是,可以汇编成专集。

3、经过反汇编所提供的SUN视窗驱动程式,X的作者能为X11R5建立一个加速的完全在使用者模式下的X驱动程式。

4、平均起来,一行高阶语言程式码要转换成多行组合语言程式码。

5、汇编程式设计万年历封面,巨集呼叫.

6、通过对软体可执行二进位制码的静态反汇编结果进行分析,可以对其进行非法的修改或窃取其智慧财产权。

7、代表一个预定义的组合语言指令序列的一种广义上的指令.

8、该显示模组用80286巨集组合语言程式设计,能与FORTRAN语言介面实现其图形功能,可以方便地用来进行机构学或其它方面的图形显示。

9、W32DASM可以反汇编16和32位的可执行档案格式。

10、这是一个利用汇编语言进行编写的跑马灯程式。

11、概念不代表最后渐近关于紧持对程式码,制造,功能,汇编或工程学。

12、经汇编后生成内部指令码线性表,实现回圈扫描控制,其处理方法简捷,执行稳定可靠。

13、用汇程式设计序产生机器语言的过程.

14、比如说,毁灭战士体使用C来编,有几段绘图程式使用汇编。

15、汇编程式把符号语言翻译成机器语言.

16、汇编实现一位数加数,多位数加法,查询字串,乘法。

17、这种组合语言输出表是支援除错的有用工具。

18、反汇编清单显示了该main函式的组合语言清单。

19、组合语言程式设计员为每条机器指令写一条助记符指令.

20、就此日常的制度而言,可以说自其产生以来,无时无刻不受到人们的重视,建章立制也就成为了各种社会管理的一项基本准则,各种制度汇编之类的研究,上不胜列举。

21、内部控制是一个过程,是一种机制,其生命力在于持续性和有效性,而不在于一时间的轰轰烈烈,或者是洋洋洒洒的制度汇编。

22、虽然,大部分的程式码反编译是完全正大光明的,但事实是一个优秀的反汇编器是软体侵权的必需工具之一。

23、DAC0832实现锯齿波,三角波,方波,正弦波,阶梯波,梯形波的汇编原始码。

24、D语言支援多种程式设计正规化:面向物件、函式式、模版元资料程式设计,甚至还包含了像goto语句和内联汇编这样较难驾驭的特性。

25、结论与上面的相同:在付费35美元就可以使用Reflector的情况下,我们不值得为编写反编译器或者反汇编器浪费时间。

26、目的:探讨A市居民10年间死因状况及其变化规律,为改进卫生服务提供科学依据。方法:根据1990年至1999年A市疾病监测点资料汇编进行死因分析。

27、不过,律师们参考的法规形式通常是根据主题分类的法律汇编。

汇编造句精选

1.介绍了DSB的温度测量原理,并结合其在热量表中的应用给出了相应的汇编子程式。

2.这是我大三做课程设计的基于组合语言的计程车计价器。

3.我们从机器语言开始,然后进化到组合语言,之后步入高阶语言。

4.左列的数字代表机器码所在的记忆体地址,右边的列代表相应的组合语言。

5.本文讨论了反汇编环境下高阶语言函式及其引数变数的识别问题。

6.文章介绍了从汇编程式到中间语言程式的转换过程中,采用基于资料流和控制流分析的符号执行方法。

7.我经常想起我父亲在灵感突发时写诗的情景,他会径直走开,把自己关在屋子里,笔尖抵在纸上,把感应到的词汇编缀成乐曲。

8.总得来说,组合语言不会在游戏中单独应用。

10.因此,人们发明了一种组合语言用来缩短和简化程式.

11.在“反汇编”视窗中,单击程式码行,然后从“除错”选单中选择“切换断点”。

12.比如说,毁灭战士整体使用C来编写,有几段绘图程式使用汇编。

13.我已经汇编了三部分的一系列提示,以帮助减少你每个月的食品费用,并帮助您节省时间和金钱!

14.对于所有社交媒体的痴迷者而言,这里有个极好的讯息,因为我们汇编了总共幅与社交媒体相关的资讯图!

15.编译器和汇编程式自动地将表示一直向下翻译为有效的机器程式码。

16.利用微控制器技术设计了电路系统,利用汇编语言进行了软体设计。

17.游戏使用汇编主要是使用它那些能提高效能的零零碎碎的部分.

18.您不得对产品进行反向工程反编译或反汇编,或试图获得对产品原码的访问权。

19.您不得反编译,逆向工程,反汇编,或以其他方式减少软体到人类感知的形式。

20.或许你会根据“高阶语言”的名称来推断,也存在低阶语言,有时也称为机器语言或者组合语言。

21.这些资料是由几个研究机构从多个评估和意见调查中汇编测评出来。

22.这是一个来自全世界语录的汇编,可以通过人名文学作品**电视节目特别主题和杂项条目来浏览。

23.本文叙述了如何在普通针彩色印表机上列印高解析度彩色影象的方法,并用组合语言编写了列印萤幕影象的程式。

24.根据除错资讯来汇编程式。

25.即便是组合语言包含可识别的记忆存换器和有意义的文字,但是却不容易使用,被认为是一种“低阶语言”。

26.导论式的生物学教科书,多倾向于结论的汇编.

27.为了使反汇编陷入窘境,无用资料可能是由手工打造以便让它匹配某个有效指令;以此挫败启发式验证跳转指令之后的指令是否有效。

28.汇编程式设计中,用项和括号对的组合所代表的一个或多个操作.

29.不知道您有何感想,但这段程式码的复杂得让我想去重拾组合语言。

30.在这些汇编语句中通常不包含巢状语句,分程式等等.

区别如下:

(1)两者编译组成不同。汇编语言是将由0、1组成的机器语言用具有简单语义的英文代码表示,而C语言不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等。

(2)两者被计算机识别的路径不同。汇编语言通常用于对硬件的直接操控。而且C语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行。

(3)两者用处不同。汇编语言通常用在程序中最核心的、控制硬件的代码,一方面是安全,另一方面提高运行速度。而C语言通常用在计算机外用功能上。

(4)两者学习难易程度不同。汇编语言所需要的编绘知识很多很复杂,经常被开发者使用。而C语言是一门很简单方便的语言,编程者也就不需要有太多的专业知识。

计算机语言(Computer Language)指用于人与计算机之间通讯的语言。计算机语言是人与计算机之间传递信息的媒介。计算机系统最大特征是指令通过一种语言传达给机器。计算机语言从低级到高级可以分为:?

(1)机器语言,即由0、1组成的机器硬件可以识别的语言;?

(2)低级语言,即汇编语言?

(3)中级语言,如C语言?

(4)高级语言,如C++,JAVA,C#等。

扩展资料:

如今通用的编程语言有两种形式:汇编语言和高级语言。

汇编语言和机器语言实质是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,容易识别和记忆。源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。

高级语言是绝大多数编程者的选择。和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈、寄存器等,这样就大大简化了程序中的指令。同时,由于省略了很多细节,编程者也就不需要有太多的专业知识。

高级语言主要是相对于低级语言而言,它并不是特指某一种具体的语言,而是包括了很多编程语言,如流行的vb、vc、foxpro、delphi等,这些语言的语法、命令格式都各不相同。

高级语言所编制的程序不能直接被计算机识别,必须经过转换才能被执行,按转换方式可将它们分为两类:解释类和编译类。

参考资料:

计算机语言_百度百科