微机原理与接口技术离线作业..

合集下载

微机原理与接口技术作业拾遗

微机原理与接口技术作业拾遗

微机原理与接口技术作业(信息A0813、机材A0831)第一次1、什么是微机的系统总线?一般将总线分为哪三组信号?p23 1.42、在DOS管理下,PC机的1M内存空间是这样分配的? p24 1.93、简述计算机中数和码的区别,计算机中的数制是如何相互转换的?p24 1.10第二次1、什么是标志?画出标志寄存器FLAGS,说明各个标志的位置和含义。

p58 2.32、什么是8088中的逻辑地址和物理地址?逻辑地址如何转换成为物理地址?p58 2.53、什么是换码指令?如何使用?答案P40 3.第三次1、编写一个程序,把从键盘输入的一个小写字母用大写显示出来。

分别用汇编语言的简化段格式和完整段格式编写。

答案P73 例题3.6第四次1、8088一共有根地址线?在访问内存时它所使用的地址线是,可直接寻址的内存空间。

p117 4.12、总线操作指的是,总线周期指的是,8088其典型的总线周期由个T状态组成。

p117 4.2第五次1、RAM指的是,ROM指的是。

以2764为例,其存储容量为8Kx8位,共有根数据线,根地址线。

p151 5.22、一个容量为4Kx4位的RAM芯片,它应该有多少个地址引脚和多少个数据引脚?p151 5.4第六次1、在80x86系统中,I/O端口的地址采用编址方式,访问端口时要使用专门的指令。

p171 6.12、一般的I/O接口电路中安排有哪三类寄存器?它们各自的作用是什么? p171 6.23、简述CPU与外设进行数据交换的几种常用方式。

p171 6.3第七次1、什么是总线?总线的使用特点有哪些?p189 7.12、在微机中有哪几类总线?p189 7.23、什么是串行总线?什么是串行异步传输?p189 7.5第八次1、各种中断如何产生,如何得到中断向量号? p211 8.12、8088中断向量表的作用是什么? p211 8.23、画出278H-27FH的译码电路。

第九次1、简述8253的初始化编程方法和编写初始化程序。

(完整word版)微机原理和接口技术课后习题和参考答案解析

(完整word版)微机原理和接口技术课后习题和参考答案解析

第一章课后习题1.1 把下列十进制数转换成二进制数、八进制数、十六进制数。

① 16.25 ② 35.75 ③ 123.875 ④ 97/1281.2 把下列二进制数转换成十进制数。

① 10101.01 ② 11001.0011 ③ 111.01 ④ 1010.11.3 把下列八进制数转换成十进制数和二进制数。

① 756.07 ② 63.73 ③ 35.6 ④ 323.451.4 把下列十六进制数转换成十进制数。

① A7.8 ② 9AD.BD ③ B7C.8D ④ 1EC1.5 求下列带符号十进制数的8位补码。

① +127 ② -1 ③ -0 ④ -1281.6 求下列带符号十进制数的16位补码。

① +355 ② -11.7 计算机分那几类?各有什么特点?1.8 简述微处理器、微计算机及微计算机系统三个术语的内涵。

1.9 80X86微处理器有几代?各代的名称是什么?1.10 你知道现在的微型机可以配备哪些外部设备?1.11 微型机的运算速度与CPU的工作频率有关吗?1.12 字长与计算机的什么性能有关?习题一参考答案1.1 ① 16.25D=10000.01B=20.2Q=10.4H② 35.75D=100011.11B=43.6Q=23.CH③ 123.875D=1111011.111B=173.7Q=7B.EH④ 97/128D=64/123+32/128+1/128=0.1100001B=0.604Q=0.C2H1.2 ① 10101.01B=21.25D ② 11001.0011B=25.1875D③ 111.01B=7.25D ④ 1010.1B=10.5D1.3 ① 756.07Q=111101110.000111B=494.109D ②63.73Q=110011.111011B=51.922D③ 35.6Q=11101.110B=29.75D ④323.45Q=11010011.100101B=211.578D1.4 ① A7.8H=167.5D ② 9AD.BDH=2477.738D③ B7C.8D=2940.551D ④ 1ECH=492D1.5 ① [+127]补=01111111 ② [-1]补= 11111111③ [-0]补=00000000 ④[-128]补=100000001.6 ① [+355]补= 0000000101100011 ② [-1]补= 1111 1111 1111 11111.7 答:传统上分为三类:大型主机、小型机、微型机。

北邮函授 微机原理和接口技术 阶段作业 3

北邮函授 微机原理和接口技术 阶段作业 3
B.3020H
C.2030H
D.2010H
知识点:
单元4习题
学生答案:
[B;]
得分:
[5]
试题分值:
5.0
提示:
11.执行下列三条指令后,AX寄存器中的内容是多少?
MOV AX,'8'
ADD AL,'9'
DAA
A.0017H
B.0077H
C.0107H
D.0071H
知识点:
单元4习题
学生答案:
[C;]
A.AX=1001H
B.AX=0FFFH
C.AX=1000H
D.AX=0111H
知识点:
单元4习题
学生答案:
[B;]
得分:
[5]
试题分值:
5.0
提示:
10.设物理地址(10FF0H)=10H,(10FF1H)=20H,(10FF2H)=30H,从地址10FF1H中取出一个字的内容是____
A.1020H
D.XOR AL, 20H
知识点:
单元4习题
学生答案:
[A;]
得分:
[5]
试题分值:
5.0
提示:
2.逻辑右移指令执行的操作是______
A.符号位填0,并顺次右移1位,最低位移至进位标志位
B.符号位不变,并顺次右移1位,最低位移至进位标志位
C.进位标志位移至符号位,顺次右移1位,最低位移至进位标志位
C.@ATT
D.?ABC
知识点:
单元4习题
学生答案:
[B;]
得分:
[5]
试题分值:
5.0
提示:
得分:
[5]

微机原理与接口技术课后习题有答案

微机原理与接口技术课后习题有答案

第一章解:五代,详细见书解:微型计算机:以大规模、超大规模集成电路为主要部件,以集成了计算机主要部件——控制器和运算器的微处理器为核心,所构造出的计算机系统 ;PC机:PCPersonal Computer机就是面向个人单独使用的一类微机 ;单片机:用于控制的微处理器芯片,内部除CPU外还集成了计算机的其他一些主要部件,如:ROM、RAM、定时器、并行接口、串行接口,有的芯片还集成了A/D、D/A转换电路等;数字信号处理器DSP:主要面向大流量数字信号的实时处理,在宿主系统中充当数据处理中心,在网络通信、多媒体应用等领域正得到越来越多的应用解:微机主要有存储器、I/O设备和I/O接口、CPU、系统总线、操作系统和应用软件组成,各部分功能如下:CPU:统一协调和控制系统中的各个部件系统总线:传送信息存储器:存放程序和数据I/O设备:实现微机的输入输出功能I/O接口:I/O设备与CPU的桥梁操作系统:管理系统所有的软硬件资源解:系统总线:传递信息的一组公用导线,CPU通过它们与存储器和I/O设备进行信息交换 ;好处:组态灵活、扩展方便三组信号线:数据总线、地址总线和控制总线 ;其使用特点是:在某一时刻,只能由一个总线主控设备来控制系统总线,只能有一个发送者向总线发送信号;但可以有多个设备从总线上同时获得信号;解:1用于数值计算、数据处理及信息管理方向;采用通用微机,要求有较快的工作速度、较高的运算精度、较大的内存容量和较完备的输入输出设备,为用户提供方便友好的操作界面和简便快捷的维护、扩充手段;2用于过程控制及嵌人应用方向;采用控制类微机,要求能抵抗各种干扰、适应现场的恶劣环境、确保长时间稳定地工作,要求其实时性要好、强调其体积要小、便携式应用强调其省电;解:解:I/O通道:位于CPU和设备控制器之间,其目的是承担一些原来由CPU处理的I/O任务,从而把CPU 从繁杂的I/O任务中解脱出来;由10根信号线组成A9-A0;解:BIOS:基本输入输出系统;主要功能:用来驱动和管理诸如键盘、显示器、打印机、磁盘、时钟、串行通信接口等基本的输入输出设备解:基本RAM区:640KB保留RAM区:128KB扩展ROM区:128KB基本ROM区:128KB解:1、数—用来直接表征量的大小,包括:定点数、浮点数;2、码—用来指代某个事物或事物的某种状态属性,包括:二进制、八进制、十进制、十六进制;区别:使用场合不同,详见P16.解:123解:原码反码补码+37 00100101/25H 00100101/25H 00100101/25H解:解:无符号数:70D补码有符号数:70DBCD码:46DASCII:F解:1、相加后若出现和大于9,则将和减去10后再向高位进12、若出现组间进位,则将低位加6解:详见课本16页;解:C3 40 20 00D:44Hd:64HCR:0DHLF:0AH0:30HSP:20HNUL:00H解:国标码:36 50H机内码:B6 B0H第3章解:1完整的汇编语言源程序由段组成2一个汇编语言源程序可以包含若干个代码段、数据段、附加段或堆栈段,段与段之间的顺序可随意排列3需独立运行的程序必须包含一个代码段,并指示程序执行的起始点,一个程序只有一个起始点4所有的可执行性语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内5通常,程序还需要一个堆栈段开始位置:用标号指明返回DOS:利用DOS功能调用的4CH子功能来实现汇编停止:执行到一条END伪指令时,停止汇编解:段定位、段组合和段类型;解:stack segment stackdb 10240stack endsdata segmentstring db 'Hello,Assembly',0dH,0aH,‘$’data endscode segment 'code'assume cs:code,ds:data,ss:stackstart: mov dx,offset stringmov ah,9int 21hcode endsend start解:1. EXE程序程序可以有多个代码段和多个数据段,程序长度可以超过64KB通常生成EXE结构的可执行程序2. COM程序只有一个逻辑段,程序长度不超过64KB需要满足一定条件才能生成COM结构的可执行程序MASM 需要采用TINY模式解:符号定义伪指令有“等价EQU”和“等号=”:符号名 EQU 数值表达式符号名 EQU <字符串>符号名=数值表达式EQU用于数值等价时不能重复定义符号名,但“=”允许有重复赋值;例如:X= 7 ;等效于:X equ 7X= X+5 ;“X EQU X+5”是错误的解:1 al=67h2 ax=133h,dx=4h3 ax=0230h4 al=41h4 ax=7654h解:my1b db 'Personal Computer'my2b db 20my3b db 14hmy4b db 00010100bmy5w dw 20 dupmy6c = 100my7c = <'Personal Computer'>解:利用定位伪指令控制,如org,even,align解:包括逻辑地址和类型两种属性;解:;数据段org 100hvarw dw 1234h , 5678hvarb db 3 , 4buff dd 10 dupmess db 'Hello';代码段mov ax , offset varb + offset messmov ax , type buff + type mess + type vard mov ax , sizeof varw+ sizeof buff+ sizeof messmov ax , lengthof varw+ lengthof vard解:1 1000超过一个字节所能表达的最大整数2SI应为偶数3两个内存单元不能直接运算4应改为al+15条件转移指令后面应接标号,而不是变量解:mov ah,1 ;只允许输入小写字母int 21hsub al,20h ;转换为大写字母mov dl,almov ah,2int 21h ;显示解:mov bx,offset LEDtablemov al,lednumxlat解:mov ax, bufXcmp ax, bufYjae donemov ax, bufYdone: mov bufZ, ax解:.model small.stack.databufX dw -7signX db.code.startupcmp bufX,0 ;test bufX,80hjl next ;jnz nextmov signX,0jmp donenext: mov signX,-1done: .exit 0end解:mov dl,’2’mov ax,bufXcmp ax,bufYje next1dec dlnext1: cmp ax,bufZje next2dec dlnext2: mov ah,2int 21h解:;代码段mov al,numbermov bx,0 ;BX←记录为1的位数restart: cmp al,0 ;AL=0结束jz doneagain: shr al,1 ;最低位右移进入CFjc next ;为1,转移inc bx ;不为1,继续jmp againnext: push axpush bxshl bx,1 ;位数乘以2偏移地址要用2个字节单元jmp addrsbx ;间接转移:IP←table+BX;以下是各个处理程序段fun0: mov dl,'0'jmp dispfun1: mov dl,'1'jmp dispfun2: mov dl,'2'jmp dispfun3: mov dl,'3'jmp dispfun4: mov dl,'4'jmp dispfun5: mov dl,'5'jmp dispfun6: mov dl,'6'jmp dispfun7: mov dl,'7'jmp disp;disp: mov ah,2 ;显示一个字符int 21hpop bxpop axjmp restartdone: …编制程序完成12H、45H、0F3H、6AH、20H、0FEH、90H、0C8H、57H和34H等10个字节数据之和,并将结果存入字节变量SUM中不考虑溢出和进位;;.model small.stack.datab_data db 12h,45h,0f3h,6ah,20h,0feh,90h,0c8h,57h,34h ;原始数据num equ 10 ;数据个数sum db ;预留结果单元.code.startupxor si, si ;位移量清零xor al, al ;取第一个数mov cx, num ;累加次数again: add al, b_datasi ;累加inc si ;指向下一个数loop again ;如未完,继续累加mov sum, al ;完了,存结果.exit 0end求主存0040h:0开始的一个64KB物理段中共有多少个空格;.model small.codestart: mov ax,0040h ;送段地址mov ds, axmov si, 0 ;偏移地址mov cx, si ;计数循环次数xor ax, ax ;空格计数器清零again: cmp byte ptr si, 20h ;与空格的ASCII码比较jne next ;不是空格,转inc ax ;是空格,空格数加1next: inc si ;修改地址指针loop again ;cx=cx-1,如cx=0 退出循环.exit 0end start编写计算100个16位正整数之和的程序;如果和不超过16位字的范围65535,则保存其和到wordsum,如超过则显示‘overflow’;答:;数据段count equ 100parray dw count dup ;假设有100个数据wordsum dw 0msg db ‘overflow’,’$’;代码段mov cx,countmov ax,0mov bx,offset parrayagain: add ax,bxjnc nextmov dx,offset msgmov ah,9int 21h ;显示溢出信息jmp done ;然后,跳出循环体next: add bx,2loop againmov wordsum,axdone: …编程把—个16位无符号二进制数转换成为用8421BCD码表示的5位十进制数;转换算法可以是:用二进制数除以10000,商为“万位”,再用余数除以1000,得到“千位”;依次用余数除以l00、10和l,得到“百位”、“十位”和“个位”; ;.model small.stack 256.dataarray dw ;源字数据dbcd db 5 dup ;五位bcd结果,高对高低对低.code.startupmov dx, array ;取源数据余数mov bx, 10000 ;除数mov cx, 10 ;除数系数mov si, 4 ;目的数据高位位移量again: mov ax, dx ;中存放被除数mov dx, 0div bx ;除于bx,商ax,余数dxmov dbcdsi, al ;商<10,存结果push dx ;暂存余数mov ax, bx ;除数除于10mov dx,0div cx ;除于cx,商ax、余数0存在dxmov bx, ax ;bx是除数pop dxdec si ;目的数据位移量减1jnz againmov dbcd, dl ;存个位数 < 10.exit 0end解:1汇编语言中,子程序要用一对过程伪指令PROC和ENDP声明,格式如下:过程名PROC NEAR|FAR……;过程体过程名ENDP2保护用到的寄存器内容,以便子程序返回时进行相应的恢复;3改错:crazy procpish bxpush cxxor ax,axxor dx,dxagain:add a,bxadc dx,0inc bxinc bxloop againpop cxpop bx解不需调用HTOASC子程序:again: mov ah,1int 21hcmp al,1bh ;ESC的ASCII码是1bhje donemov dl,almov ah,2int 21h ;是大写字母则转换为小写字母jmp againdone: …解答:asctob procpush cxand dh,0fh ;先转换十位数shl dh,1 ;十位数乘以10采用移位指令mov ch,dhshl dh,1shl dh,1add dh,chand dl,0fh ;转换个位数add dh,dl ;十位数加个位数mov al,dh ;设置出口参数pop cxretasctob endp解:DIPASC proc ;入口参数:AL=要显示的一个16进制数push cxpush dxpush axmov cl,4 ;转换高位shr al,clcall HTOASCmov dl,al ;显示mov ah,2int 21hpop ax ;转换低位call HTOASCmov dl,al ;显示mov ah,2int 21hmov dl,’H’;显示一个字母“H”mov ah,2int 21hpop dxpop cxretDIPASC endpHTOASC proc ;将AL低4位表达的一位16进制数转换为ASCII码and al,0fhcmp al,9jbe htoasc1add al,37h ;是0AH~0FH,加37H转换为ASCII码ret ;子程序返回htoasc1: add al,30h ;是0~9,加30H转换为ASCII码ret ;子程序返回HTOASC endp解:lucase procpush bxmov bx,offset stringcmp al,0je case0cmp al,1jz case1cmp al,2jz case2jmp donecase0: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next0cmp byte ptr bx,’Z’ja next0add byte ptr bx,20hnext0: inc bxjmp case0case1: cmp byte ptr bx,0je donecmp byte ptr bx,’a’jb next1cmp byte ptr bx,’z’ja next1sub byte ptr bx,20hnext1: inc bxjmp case1case2: cmp byte ptr bx,0je donecmp byte ptr bx,’A’jb next2cmp byte ptr bx,’Z’ja next20add byte ptr bx,20hjmp next2next20: cmp byte ptr bx,’a’jb next2cmp byte ptr bx,’z’ja next2sub byte ptr bx,20hnext2: inc bxjmp case2done: pop bxretlucase endp解:1用寄存器传递参数:最简单和常用的参数传递方法是通过寄存器,只要把参数存于约定的寄存器中就可以了由于通用寄存器个数有限,这种方法对少量数据可以直接传递数值,而对大量数据只能传递地址采用寄存器传递参数,注意带有出口参数的寄存器不能保护和恢复,带有入口参数的寄存器可以保护、也可以不保护,但最好能够保持一致2用共享变量传递参数子程序和主程序使用同一个变量名存取数据就是利用共享变量全局变量进行参数传递如果变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTREN声明如果主程序还要利用原来的变量值,则需要保护和恢复利用共享变量传递参数,子程序的通用性较差,但特别适合在多个程序段间、尤其在不同的程序模块间传递数据3用堆栈传递参数参数传递还可以通过堆栈这个临时存储区;主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们采用堆栈传递参数是程式化的,它是编译程序处理参数传递、以及汇编语言与高级语言混合编程时的常规方法解:方法:主程序将入口参数压入堆栈,子程序从堆栈中取出参数;子程序将出口参数压入堆栈,主程序弹出堆栈取得它们注意:压栈与弹栈必须要一一对应;解:方法1:neg32 proc ;入口参数:=32位有符号数neg ax ;实现0-功能neg dxsbb dx,0 ;这条指令也可以用dec dx代替retneg32 endp ;出口参数:=32位有符号数的补码方法2:neg32 proc ;入口参数:=32位有符号数not ax ;实现求反加1not dxadd ax,1adc dx,0retneg32 endp ;出口参数:=32位有符号数的补码解:;数据段array db 12h,25h,0f0h,0a3h,3,68h,71h,0cah,0ffh,90h ;数组count equ $-array ;数组元素个数result db ;校验和;代码段mov bx,offset array ;BX←数组的偏移地址mov cx,count ;CX←数组的元素个数call checksum ;调用求和过程mov result,al ;处理出口参数mov ax,4c00hint 21h;计算字节校验和的通用过程;入口参数:DS:BX=数组的段地址:偏移地址,CX=元素个数;出口参数:AL=校验和;说明:除AX/BX/CX外,不影响其他寄存器checksum procxor al,al ;累加器清0sum: add al,bx ;求和inc bx ;指向下一个字节loop sumretchecksum endpend解:⑴.model small.stack.datawdata dw 34abh.code.startupmov ax,wdatacall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑵.model small.stack.datawdata dw 34abhwordtemp dw.code.startupmov ax,wdatamov wordtemp,axcall dispa.exit 0;dispa procpush cxpush dxmov cl,4mov dl,byte ptr wordtemp+1shr dl,clcall dldispmov dl,byte ptr wordtemp+1and dl,0fhcall dldispmov dl,byte ptr wordtempshr dl,clcall dldispmov dl,byte ptr wordtempand dl,0fhcall dldisppop dxpop cxretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend⑶.model small.stack.datawdata dw 34abh.code.startuppush wdatacall dispapop ax ;add sp,2.exit 0;dispa procpush bpmov bp,sppush axpush cxpush dxmov ax,bp+4mov cl,4mov dl,ahshr dl,clcall dldispmov dl,ahand dl,0fhcall dldispmov dl,alshr dl,clcall dldispmov dl,aland dl,0fhcall dldisppop dxpop cxpop axpop bpretdispa endp;dldisp procpush axor dl,30hcmp dl,39hjbe dldisp1add dl,7dldisp1: mov ah,2int 21hpop axretdldisp endpend解:如果利用共享变量传递函数,且变量定义和使用不在同一个源程序中,需要利用PUBLIC、EXTERN 声明;解:1宏定义由一对宏汇编伪指令MACRO和ENDM来完成,格式如下:宏名MACRO 形参表……;宏定义体ENDM宏定义之后就可以使用它,即宏调用:宏名实参表2宏调用的格式同一般指令一样:在使用宏指令的位置写下宏名,后跟实体参数;如果有多个参数,应按形参顺序填入实参,也用逗号分隔3宏展开:在汇编时,宏指令被汇编程序用对应的代码序列替代,这就是宏展开宏展开的具体过程是:当汇编程序扫描源程序遇到已有定义的宏调用时,即用相应的宏定义体完全替代源程序的宏指令,同时用位置匹配的实参对形参进行取代解:宏调用的参数通过形参、实参结合实现传递,简捷直观、灵活多变;宏汇编的一大特色是它的参数;宏定义时既可以无参数,也可以有一个或多个参数;宏调用时实参的形式也非常灵活,可以是常数、变量、存储单元、指令操作码或它们的一部分,也可以是表达式;只要宏展开后符合汇编语言的语法规则即可;解:宏:仅是源程序级的简化:宏调用在汇编时进行程序语句的展开,不需要返回;不减小目标程序,执行速度没有改变通过形参、实参结合实现参数传递,简捷直观、灵活多变子程序:还是目标程序级的简化:子程序调用在执行时由CALL指令转向、RET指令返回;形成的目标代码较短,执行速度减慢需要利用寄存器、存储单元或堆栈等传递参数选择:宏与子程序具有各自的特点,程序员应该根据具体问题选择使用那种方法;通常,当程序段较短或要求较快执行时,应选用宏;当程序段较长或为减小目标代码时,要选用子程序编写一个宏指令move doprnd,soprnd,它实现任意寻址方式的字量源操作数soprnd送到目的操作数doprnd,包括存储单元到存储单元的传送功能;答:move macro doprnd,soprndmov ax,soprndmov doprnd,axendm定义一个宏logical,用它代表4条逻辑运算指令:and/or/xor/test;注意需要利用3个形式参数,并给出一个宏调用以及对应宏展开的例子;答:logical macro lcode,dopd,sopdlcode dopd,sopdendm例如,如果使用“and ax,bx”指令,可以利用该宏定义,写出宏指令如下:logical and,ax,bx解:utol macrolocal nextcmp al,’A’;小于“A”不转换jb nextcmp al,’Z’;大于“A”不转换ja nextadd al,20h ;是大写字母则转换为小写字母next:endm定义一个宏movestr strn,dstr,sstr,它将strn个字符从一个字符区sstr传送到另一个字符区dstr解:假设它们都在数据段movestr macro strn,dstr,sstrmov cx,dsmov es,cxmov cx,strnmov di,offset dstrmov si,offset sstrcldrep movsb ;;重复传送ES:DI←DS:SIendm第五章解:主存的作用:保存正在使用的、处于活动状态的程序和数据;辅存的作用:长期保存程序文件和数据文件,在需要时将这些文件调入RAM内存并激活使用;cache的作用:提高对存储器的访问速度;虚拟存储:由容量较小的主存和容量较大的辅存构成,其目标是扩大程序员眼中的主存容量;区别:通过存储器访问指令用户可对主存进行随机访问;用户利用操作系统提供的用户命令和功能调用对辅存进行访问;在半导体存储器中,RAM指的是随机存取存储器 ,他可读可写,但断电后信息一般会丢失;而ROM指的是只读存储器 ,正常工作时只能从中读取信息,但断电后信息不会丢失 ;以EPROM芯片2764为例,其存储容量为8K×8位,共有 8 条数据线和 13 条地址线;用它组成64KB的ROM存储区共需 8 片2764芯片; 解:双译码方式使得地址译码器的输出线的数目大为减少,使得芯片设计得时候复杂度就低了;地址线A9~A4根数据线I/O4~I/O1片选CS读写WE解:假想的RAM有12根地址线、4根数据线片选端CS或CE:有效时,可以对该芯片进行读写操作,通过对系统高位地址线的译码来选中各个存储芯片输出OE:控制读操作;有效时,芯片内数据输出,该控制端对应系统的读控制线MEMRMRDC写WE:控制写操作;有效时,数据进入芯片中,该控制端对应系统的写控制线MEMWMWTC解:位片结构:每个存储单元具有一个唯一的地址,可存储1位;4116字片结构:每个存储单元具有一个唯一的地址,可存储多位;2114解:组成单元速度集成度应用SRAM 触发器快低小容量系统DRAM 极间电容慢高大容量系统NVRAM 带微型电池慢低小容量非易失掩膜ROM:信息制作在芯片中,不可更改PROM:允许一次编程,此后不可更改EPROM:用紫外光擦除,擦除后可编程;并允许用户多次擦除和编程EEPROME2PROM:采用加电方法在线进行擦除和编程,也可多次擦写Flash Memory闪存:能够快速擦写的EEPROM,但只能按块Block擦除解:位扩充——存储器芯片数据位数小于主机数据线数时,利用多个存储器芯片在数据“位”方向的扩充;地址扩充字扩充——当一个存储器芯片不能满足系统存储容量时,利用多个存储器芯片在“地址”方向的扩充组成32KB存储空间,用SRAM 21141K×4需要64个芯片;组成32KB存储空间,用DRAM 411616K×1需要16个芯片;它们都需要进行位扩充和地址扩充解:片选信号说明该存储器芯片是否被选中正常工作,设置它可以比较方便地实现多个存储器芯片组成大容量的存储空间存储器片选信号通常与CPU地址总线的高位地址线相关联,可以采用“全译码”、“部分译码”、“线选译码”方式采用全译码方式可以避免地址重复采用部分或线选译码可以节省译码硬件解:24=16解:解:解:解:解:动态随机存取存储器 DRAM 的存储单元电路动态存储单元是由 MOS 管的栅极电容 C 和门控管组成的;数据以电荷的形式存储在栅极电容上,电容上的电压高表示存储数据 1 ;电容没有储存电荷,电压为 0 ,表明存储数据 0 ;因存在漏电,使电容存储的信息不能长久保持,为防止信息丢失,就必须定时地给电容补充电荷,这种操作称为“ 刷新” 由于要不断地刷新,所以称为动态存储;方法:采用“仅行地址有效”方法刷新;刷新周期:15μs刷新次数:128解:4 256KB A19-A16 4解:访问的局部性原理:在一个较短的时间间隔内,由程序产生的地址往往集中在存储器逻辑地址空间的很小范围内;指令地址的分布本来就是连续的,再加上循环程序段和子程序段要重复执行多次;因此,对这些地址的访问就自然地具有时间上集中分布的倾向;数据分布的这种集中倾向不如指令明显,但对数组的存储和访问以及工作单元的选择都可以使存储器地址相对集中;这种对局部范围的存储器地址频繁访问,而对此范围以外的地址则访问甚少的现象,就称为程序访问的局部性;cache的作用:提高对存储器的访问速度;虚拟存储:其目标是扩大程序员眼中的主存容量;第七章解:总线:指可以由多个信息处理单元所共享的信息通道;使用特点:⑴在某一时刻,只能由一个主设备控制总线,其他主设备此时可作为从设备出现⑵在某一时刻,只能有一个设备向总线上发送数据,但可以有多个设备从总线上接收数据在各种微机总线中,根据总线连接对象的不同可将它们分为以下几类,它们是:片内总线、芯片总线、板级总线、设备总线和互连总线_;例如,ISA总线属于板级总线,USB总线属于设备总线,I2C总线属于芯片总线;总线中除电源和地线外的信号线,也可按传输信息的不同分为以下3类,即:数据总线、地址总线、控制总线 ;解:分时复用就是一个引脚在不同的时刻具有两个甚至多个作用总线复用的目的是为了减少对外引脚个数在访问存储器或外设的总线操作周期中,这些引脚在第一个时钟周期输出存储器或I/O端口的低8位地址A7 ~ A0,其他时间用于传送8位数据D7 ~ D0 解:并行总线:多维数据通过多根信号线同时进行传递;并行同步传输、并行异步传输见P174;解:见P174.解:总线的性能指标包括:总线宽度、标准传输、时钟同步/异步、总线复用、信号线数、总线控制方式总线宽度:它是指数据总线的根数, 用bit位表示,如8位、16位、32位、64位;解:D0~D7:8位双向数据总线A0~A19:20位输出地址总线ALE:地址锁存允许,每个CPU 总线周期有效IOR:I/O读,输出IOW:I/O写,输出IO CH RDY:I/O通道准备好,输入第九章解:软件延时、不可编程的硬件定时、可编程的硬件定时解:CLK时钟输入信号——在计数过程中,此引脚上每输入一个时钟信号下降沿,计数器的计数值减1GATE门控输入信号——控制计数器工作,可分成电平控制和上升沿控制两种类型OUT计数器输出信号——当一次计数过程结束计数值减为0,OUT引脚上将产生一个输出信号解:8253每个通道有 6 种工作方式可供选择;若设定某通道为方式0后,其输出引脚为低电平;当写入计数初值并进入减1计数器后通道开始计数, CLK 信号端每来一个脉冲减1计数器就减1;当计数器减为0 ,则输出引脚输出高电平,表示计数结束;8253的CLK0接的时钟,欲使OUT0产生频率为300KHz的方波信号,则8253的计数值应为 5=÷300KHz ,应选用的工作方式是 3解:1 mov al,50hmov dx,207hout dx,almov al,128 ;80hmov dx,205hout dx,al2 mov al,33hmov dx,207hout dx,almov ax,3000h ;不是3000mov dx,204hout dx,almov al,ahout dx,al3 mov al,0b4hmov dx,207hout dx,almov al,02f0hmov dx,206hout dx,almov al,ahout dx,al解:mov al,33hout 0fbh,al ;写入计数器0地址:0fbhmov al,80h ;out 0f8h,al ;写入低字节计数初值mov al,50hout 0f8h,al ;写入高字节计数初值作用:计数器0的计数初值为5080h解计数器0——每隔55ms产生一个IRQ0中断请求计数器1——每隔15μs产生一个DRAM刷新请求计数器2——控制扬声器音调解101个下降沿,还可以采用方式4GATE0接外部启动计数器的控制信号,可以选用方式1或方式5 mov dx,203hmov al,12h ;方式5为1ahout dx,almov dx,200hmov al,64hout dx,al解:计数器0的计数值:5M/1K=5000=1388H方式控制字:00100101=25H、2DH、35H、3DH十进制计数00100100=24H、2CH、34H、3CH二进制计数计数器1的计数值:1000方式控制字:01101001=69H、79H十进制计数 01101000=68H、78H二进制计数MOV DX,0FFF3HMOV AL,25H ;通道0,只写高字节,方式2,十进制OUT DX,ALMOV DX, 0FFF0HMOV AL,50H ;计数初值5000OUT DX,ALMOV DX,0FFF3HMOV AL,69H ;通道1,方式4OUT DX,ALMOV DX, 0FFF1HMOV AL,10H ;计数初值1000OUT DX,AL解:stack segment stackdw 1024 dupstack endsdata segmentfreq dw 8,,,,,,,,data endscode segment 'code'assume cs:code, ds:data,ss:stack start: mov ax,datamov ds,axagain:mov ah,01hin 21hcmp al,1BHjz nextcmp al,31Hjb next1cmp al,38Hja next1and al,0fhmov ah,00hmov si,axmov bx,offset freqmov ax,BX+SIcall speakercall speakonjmp againnext1: call speakoffjmp againnext: mov ax,4c00hint 21hspeaker procpush axmov al,0b6hout 43h,alpop axout 42h,almov al,ahout 42h,alretspeaker endp speakon procpush axin al,61hor al,03hout 61h,alpop axretspeakon endp speakoff procpush axin al,61hand al,0fchout 61h,alpop axretspeakoff endpcode endsend starts 解:1 f 1162f。

微机原理与接口技术课后习题答案

微机原理与接口技术课后习题答案

2.1用降幂法和除法将下列十进制数转换为二进制数和十六进制数:(1) 369 (2) 10000 (3) 4095 (4) 32767答:(1) 369=1 0111 0001B=171H(2) 10000=10 0111 0001 0000B=2710H(3) 4095=1111 1111 1111B=FFFH(4) 32767=111 1111 1111 1111B=7FFFH2.2将下列二进制数转换为十六进制数和十进制数:(1) 10 1101 (2) 1000 0000 (3) 1111 1111 1111 1111 (4) 1111 1111答:(1) 10 1101B=2DH=45(2) 1000 0000B=80H=128(3) 1111 1111 1111 1111B=FFFFH=65535(4) 1111 1111B=FFH=2552.3将下列十六进制数转换为二进制数和十进制数:(1) FA (2) 5B (3) FFFE (4) 1234答:(1) FAH=1111 1010B=250(2) 5BH=101 1011B=91(3) FFFEH=1111 1111 1111 1110B=65534(4) 1234H=1 0010 0011 0100B=46602.4下列各数均为十进制数,请用8位二进制补码计算下列各题,并用十六进制数表示其运算结果。

(1) (-85)+76 (2) 85+(-76) (3) 85-76 (4) 85-(-76) (5) (-85)-76 (6) -85-(-76)答:(1) (-85)+76=1010 1011B+0100 1100B=1111 0111B=0F7H;CF=0;OF=0(2) 85+(-76)=0101 0101B+1011 0100B=0000 1001B=09H;CF=1;OF=0(3) 85-76=0101 0101B-0100 1100B=0101 0101B+1011 0100B=0000 1001B=09H;CF=0;OF=0(4) 85-(-76)=0101 0101B-1011 0100B=0101 0101B+0100 1100B=10100001B=0A1H;CF=0;OF=1(5) (-85)-76=1010 1011B-0100 1100B=1010 1011B+1011 0100B=0101 1111B=5FH;CF=0;OF=1(6) -85-(-76)=1010 1011B-1011 0100B=1010 1011B+0100 1100B=11110111B=0F7H;CF=0;OF=0 2.5下列各数为十六进制表示的8位二进制数,请说明当它们分别被看作是用补码表示的带符号数或无符号数时,它们所表示的十进制数是什么?(1) D8 (2) FF答:(1) D8H表示的带符号数为-40,D8H表示的无符号数为216;(2)FFH表示的带符号数为-1,FFH表示的无符号数为255。

微机原理及接口技术课后习题及参考答案

微机原理及接口技术课后习题及参考答案

第一章课后习题1.1 把下列十进制数转换成二进制数、八进制数、十六进制数。

① 16.25 ② 35.75 ③ 123.875 ④ 97/1281.2 把下列二进制数转换成十进制数。

① 10101.01 ② 11001.0011 ③ 111.01 ④ 1010.11.3 把下列八进制数转换成十进制数和二进制数。

① 756.07 ② 63.73 ③ 35.6 ④ 323.451.4 把下列十六进制数转换成十进制数。

① A7.8 ② 9AD.BD ③ B7C.8D ④ 1EC1.5 求下列带符号十进制数的8位补码。

① +127 ② -1 ③ -0 ④ -1281.6 求下列带符号十进制数的16位补码。

① +355 ② -11.7 计算机分那几类?各有什么特点?1.8 简述微处理器、微计算机及微计算机系统三个术语的内涵。

1.9 80X86微处理器有几代?各代的名称是什么?1.10 你知道现在的微型机可以配备哪些外部设备?1.11 微型机的运算速度与CPU的工作频率有关吗?1.12 字长与计算机的什么性能有关?习题一参考答案1.1 ① 16.25D=10000.01B=20.2Q=10.4H② 35.75D=100011.11B=43.6Q=23.CH③ 123.875D=1111011.111B=173.7Q=7B.EH④ 97/128D=64/123+32/128+1/128=0.1100001B=0.604Q=0.C2H1.2 ① 10101.01B=21.25D ② 11001.0011B=25.1875D③ 111.01B=7.25D ④ 1010.1B=10.5D1.3 ① 756.07Q=111101110.000111B=494.109D ②63.73Q=110011.111011B=51.922D③ 35.6Q=11101.110B=29.75D ④323.45Q=11010011.100101B=211.578D1.4 ① A7.8H=167.5D ② 9AD.BDH=2477.738D③ B7C.8D=2940.551D ④ 1ECH=492D1.5 ① [+127]补=01111111 ② [-1]补= 11111111③ [-0]补=00000000 ④[-128]补=100000001.6 ① [+355]补= 0000000101100011 ② [-1]补= 1111 1111 1111 11111.7 答:传统上分为三类:大型主机、小型机、微型机。

微机原理与接口技术作业..

微机原理与接口技术作业..

浙江大学远程教育学院《微机原理与接口技术》课程作业姓名:张鹏飞学号:713128202005年级:13春学习中心:华家池第2章P522.80C51单片机引脚有哪些第二功能?答:80C51单片机的P0、P2和P3引脚都具有第二功能。

第一功能第二变异功能P0口地址总线A0~A7/数据总线D0~D7P2口地址总线A8~A15P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)INT(外部中断0)P3.2 0INT(外部中断1)P3.3 1P3.4 T0(定时器/计数器0的外部输入)P3.5 T1(定时器/计数器0的外部输出)P3.6 WR(外部读写存储器或1/0的写选通)P3.7 RD(外部读写存储器或1/0的读选通)4.80C51存储器在结构上有何特点?在物理上和逻辑上各有哪几种地址空间?访问片内数据存储器和片外数据存储器的指令格式有何区别?答:80C51单片机采用哈佛(Har-yard)结构,即是将程序存储器和数据存储器截然分开,分别进行寻址。

不仅在片内驻留一定容量的程序存储器和数据存储器及众多的特殊功能寄存器,而且还具有强的外部存储器扩展能力,扩展的程序存储器和数据存储器寻址范围分别可达64KB。

1.在屋里上设有4个存储器空间●片内程序存储器;●片外程序存储器;●片内数据存储器;●片外数据存储器。

2.在逻辑上设有3个存储器地址空间●片内、片外统一的64KB程序存储器地址空间。

●片内2568(80C52为384 B)数据存储器地址空间。

片内数据存储器空间,在物理上又又包含两部分:一对于80C51型单片机,从0~127字节为片内数据存储器空间;从128~255字节为特殊功能寄存器(SFR)空间(实际仅占用了20多个字节)。

●片外64KB 数据存储器地址空间。

在访问三个不同的逻辑空间时,应采用不同形式的指令,以产生不同存储空间的选通信号。

访问片内RAM采用MOV指令,访问片外RAM则一定要采用MOVX指令,因为MOVX指令会产生控制信号RD或WR,用来访问外RAM。

微机原理与接口技术习题答案2

微机原理与接口技术习题答案2

微机原理与接口技术习题答案2第一篇:微机原理与接口技术习题答案2第2章 8086 CPU结构与功能1.微处理器内部结构由哪几部分组成?阐述各部分的主要功能。

解:微处理器内部结构由四部分组成:(1)算术逻辑运算单元ALU:完成所有的运算操作;(2)工作寄存器:暂存寻址信息和计算过程中的中间结果;(3)控制器:完成指令的读入、寄存和译码,并产生控制信号序列使ALU完成指定操作;(4)I/O控制逻辑:处理I/O操作。

2.微处理器级总线有哪几类?各类总线有什么作用?解:微处理器级总线有三类:(1)数据总线:传送信息;(2)地址总线:传送地址码;(3)控制总线传送控制信号。

3.为什么地址总线是单向的,而数据总线是双向的?解:地址码只能由CPU生成。

而数据需要在CPU和存储器之间传输。

4.8086/8088微处理器内部有哪些寄存器?其主要作用是什么?解:8086CPU内部有14个16位寄存器,其中8个通用寄存器(4数据寄存器AX、BX、CX、DX,4地址指针/变址寄存器SI、DI、SP、BP),4个段寄存器(CS、DS、ES、SS),2个控制寄存器(指令指针IP,微处理器状态字PSW)。

应该注意的是:可以在指令中用作为地址指针的寄存器有:SI、DI、BP和BX;在微处理器状态字PSW中,一共设定了9个标志位,其中6个标志位用于反映ALU前一次操作的结果状态(CF,PF,AF,ZF,SF,OF),另3个标志位用于控制CPU操作(DF,IF,TF)。

5.如果某微处理器有20条地址总线和16条数据总线:(1)假定存储器地址空间与I/O地址空间是分开的,则存储器地址空间有多大?(2)数据总线上传送的有符号整数的范围有多大?解:(1)存储器地址空间为:220=1MB1(2)有符号数范围为:-2~2-1,即-32768~32767 6.将十六进制数62A0H与下列各数相加,求出其结果及标志位CF、AF、SF、ZF、OF15和PF的值:(1)1234H;(2)4321H;(3)CFA0H;(4)9D60H 解:(1)74D4HCF=0 AF=0 SF=0 ZF=0 OF=0 PF=1(2)A5C1H CF=0 AF=0 SF=1 ZF=0 OF=1 PF=0(3)3240HCF=1 AF=0 SF=0 ZF=0 OF=0 PF=0(4)0000HCF=1 AF=0 SF=0 ZF=1 OF=0 PF=1 7.从下列各数中减去4AE0H,求出其结果及标志位CF、AF、SF、ZF、OF和PF的值:(1)1234H;(2)5D90H;(3)9090H;(4)EA04H 解:(1)C754HCF=1 AF=0 SF=1 ZF=0 OF=0 PF=0(2)12B0HCF=0 AF=0 SF=0 ZF=0 OF=0 PF=0(3)45B0HCF=0 AF=0 SF=0 ZF=0 OF=1 PF=0(4)9F24HCF=0 AF=0 SF=1 ZF=0 OF=0 PF=1 9.写出下列存储器地址的段地址、偏移地址和物理地址:(1)2134:10A0;(2)1FA0:0A1F;(3)267A:B876 解:物理地址=段地址*10H+偏移地址(1)段地址:2134H,偏移地址:10A0H,物理地址:223E0H (2)段地址:1FA0H,偏移地址:0A1FH,物理地址:2041FH(3)段地址:267AH,偏移地址:B876H,物理地址:32016H 10.给定一个数据的有效地址为2359H,并且(DS)=490BH,求该数据的物理地址。

微机原理及接口技术课后习题及参考答案

微机原理及接口技术课后习题及参考答案

第一章课后习题把下列十进制数转换成二进制数、八进制数、十六进制数。

① ② ③ ④ 97/128把下列二进制数转换成十进制数。

① ② ③ ④把下列八进制数转换成十进制数和二进制数。

① ② ③ ④把下列十六进制数转换成十进制数。

① ② ③ ④ 1EC求下列带符号十进制数的8位补码。

① +127 ② -1 ③ -0 ④ -128求下列带符号十进制数的16位补码。

① +355 ② -1计算机分那几类?各有什么特点?简述微处理器、微计算机及微计算机系统三个术语的内涵。

80X86微处理器有几代?各代的名称是什么?你知道现在的微型机可以配备哪些外部设备?微型机的运算速度与CPU的工作频率有关吗?字长与计算机的什么性能有关?习题一参考答案① ===② ===③ ===④ 97/128D=64/123+32/128+1/128===① = ② =③ = ④ =① == ② ==③ == ④ =.100101B=① = ② =③ = ④ 1EC H=492D① [+127]补=01111111 ② [-1]补=③ [-0]补=00000000 ④[-128]补=① [+355]补= 00000001 ② [-1]补= 1111 1111 1111 1111答:传统上分为三类:大型主机、小型机、微型机。

大型主机一般为高性能的并行处理系统,存储容量大,事物处理能力强,可为众多用户提供服务。

小型机具有一定的数据处理能力,提供一定用户规模的信息服务,作为部门的信息服务中心。

微型机一般指在办公室或家庭的桌面或可移动的计算系统,体积小、价格低、具有工业化标准体系结构,兼容性好。

答:微处理器是微计算机系统的核心硬件部件,对系统的性能起决定性的影响。

微计算机包括微处理器、存储器、I/O接口电路及系统总线。

微计算机系统是在微计算机的基础上配上相应的外部设备和各种软件,形成一个完整的、独立的信息处理系统。

答:从体系结构上可分为5代:4004:4位机;8080/8085:8位机;8086/8088/80286:16位机;80386/80486:32位机;Pentium系列机:64位。

微机原理与接口技术离线作业答案(必做)教材

微机原理与接口技术离线作业答案(必做)教材

浙江大学远程教育学院《微机原理与接口技术》课程作业姓名:学号:年级:学习中心:温州—————————————————————————————第二章P472.80C51单片微机芯片引脚第二功能有哪些?答:80C51单片机的P0、P2和P3引脚都具有第二功能。

第一功能第二变异功能P0口地址总线A0~A7/数据总线D0~D7P2口地址总线A8~A15P3.0 RXD (串行输入口)P3.1 TXD (串行输出口)INT(外部中断0)P3.2 0INT(外部中断1)P3.3 1P3.4 T0 (定时器/计数器0的外部输入)P3.5 T1 (定时器/计数器0的外部输出)P3.6 WR(外部读写存储器或I/O的写选通)P3.7 RD(外部读写存储器或I/O的读选通)4.80C51存储器在结构上有何特点?在物理上和逻辑上各有哪几种地址空间?访问片内数据存储器和片外数据存储器的指令格式有何区别?答:80C51单片机采用哈佛(Har-yard)结构,即是将程序存储器和数据存储器截然分开,分别进行寻址。

不仅在片内驻留一定容量的程序存储器和数据存储器及众多的特殊功能寄存器,而且还具有强的外部存储器扩展能力,扩展的程序存储器和数据存储器寻址范围分别可达64KB。

⒈在物理上设有4个存储器空间●片内程序存储器;●片外程序存储器;●片内数据存储器;●片外数据存储器。

⒉在逻辑上设有3个存储器地址空间●片内、片外统一的64 KB程序存储器地址空间。

●片内256B(80C52为384 B)数据存储器地址空间。

片内数据存储器空间,在物理上又包含两部分:-对于80C51型单片机,从0~127 字节为片内数据存储器空间;从128~255字节为特殊功能寄存器(SFR)空间(实际仅占用了20多个字节)。

●片外64 KB的数据存储器地址空间。

在访问三个不同的逻辑空间时,应采用不同形式的指令,以产生不同存储空间的选通信号。

访问片内RAM采用MOV指令,访问片外RAM则一定要采用MOVX指令,因为MOVX 指令会产生控制信号RD或WR,用来访问片外RAM。

微机原理和接口技术课后作业答案公开课获奖课件

微机原理和接口技术课后作业答案公开课获奖课件

解:该8255芯片初始化程序包括置方式控制字及C口按位操作控制字。程序如下:
MOV DX,0A383H
;内部控制寄存器地址送DX
MOV AL,80H
;方式控制字
OUT DX,AL
MOV AL,08H
;PC4置0
第5页
6 OUT DX,AL
MOV AL,0FH
;PC7置1
OUT DX,AL
7.11 设8255芯片接口地址范围为03F8H~03FBH,A 组 B 组均工作于方式0,A 口作为数据输出口,C 口低 4 位作为 控制信号输入口,其他端口未使用。试画出该片8255芯片与系统电路连接图,并编写初始化程序。
A9
A8
A7
A6
&
A5
A 15
A 14
A 13 A 12
≥1
A 11
A 10
A4 A3 A2
G CS
G2A Y6
G2B
C B A 74LS138
(题7.11图)
PA0 。 。 。 PA7 PC0 。 。 。 PC4
第7页
8 7.12 已知某8088微机系统I/0接口电路框图如教材中图7-47所示。试完毕:
假如是硬件启动呢? 解:在软件启动时,要使计数正常进行,GATE端必须为高电平;假如是硬件启动,则要在写入计数初值后使
GATE端出现一种由低到高正跳变,以启动计数。 7.4 若8253芯片接口地址为D0D0H~D0D3H,时钟信号频率为2MHz。现运用计数器0、1、2分别产生周期为10us
对称方波及每1ms和1s产生一种负脉冲,试画出其与系统电路连接图,并编写包括初始化在内程序。 解:根据题目规定可知,计数器0( T0)工作于方式3,计数器1( T1)和计数器2( T2)工作于方式2。时钟

微机原理与接口技术作业题(五号字体为考后加的解答)

微机原理与接口技术作业题(五号字体为考后加的解答)

微机原理与接口技术作业题(五号字体为考后加的解答)微机原理与接口技术作业题(五号字体为考后加的解答)作业1:1、微机系统由哪几个部分组成?各部分的作用是什么?CPU+存储器+IO设备+总线;CPU是取指和执行指令的部件,存储器是存储指令和数据的部件,IO设备完成信息的输入和输出,总线是CPU和部件之间的数据传送的公共通道。

2、计算机是如何工作的?计算机三大基本操作(任务)是什么?一般计算机的工作原理是存储指令、逐条执行。

其三大基本操作(任务)是数据传送、数据运算和程序跳转。

3、CPU由哪几部分组成?各部分有何作用?CPU一般由控制器+运算器+寄存器组构成。

控制器是控制取指和执行指令的部件;运算器是完成数据运算的部件;大部分寄存器协助完成运算任务,小部分协助完成控制任务。

8086CPU由接口部件BIU 和执行部件EU构成。

BIU 完成取指(和取数据)功能,EU完成执行指令的功能(包含运算器功能)4、总线分哪几部分组成?各部分有何作用?DB/AB/CB,DB是数据传送通道,AB提供数据传送的物理地址,CB控制数据的传送方向和有效传送时间。

作业2:1、求5,0,-6的补码(一个字节长度)00000101B、00000000B、11111010B2、求100,64和10的BCD码(用十六进制表示)100H、64H、10H3、写出字符“A”,“a”和“1”的ASCII码41H、61H、31H4、说明如何进行BCD码相加?先进行二进制加,再作修正。

例如:67+89=?,先作二进制加67H+89H=F0H,再作修正(个位数加后为10H大于9H,十位数加后为FH大于9H,故都加6修正):F0H+66H=156H,得67+89=1565、说明如何进行十、十六进制数的互相转换?“除以16取余数”的方法,可以将数十进制数转化为十六进制数。

通过“各项乘以16N的权再求和”,可以将数十六进制数转化为十进制数。

余数法例如:278/16=18余10,18/16=1余2,故282=12AH。

微机原理与接口技术作业答案

微机原理与接口技术作业答案

第二章微处理器及其结构2-7 什么是逻辑地址? 什么是物理地址? 在实地址方式下,如何求存储器的物理地址? 设一个16字的数据区,它的起始地址为70A0H:DDF6(段基址:偏移地址).写出这个数据区的首字单元和末字单元的物理地址.解:1). 实模式下,逻辑地址由段基址和偏移地址组成.物理地址是真正的存储单元的地址.2). 物理地址=段基址*16 + 偏移地址3). 首字单元地址:70A0H*16 +DDF6H = 70A00H + DDF6H = 7E7F6H末字单元地址:7E7F6H + (16-1)*2 = 7E7F6H + 1EH = 7E814H注意:相邻两个存储单元可构成一个字长为16位的字,在对准字时,用偶地址表示字的地址.1EH1CH 2H20H16H4H18H1AH14H10H0H12HEHCH8HAH6H第三章指令系统3-6 分别指出下列指令中源操作数和目标操作数的寻址方式. 若是存储器寻址,用表达式表示EA=?(1)AND AX, 00FFH(2)ADD BX, [00FFH](3)MOV AX, [BX+10H](4)ADD AX, [ESI*8](5)SUB [BP][SI], AX(6)MOV AX, [BX+DI+20H](7)CMP [SI], AX(8)OR AX, DX(9)MOV EAX, [ESI][EDI*2](10)PUSH DS解:(1)立即数寻址(2)直接寻址EA=00FFH(3)基址寻址EA=(BX)+10(4)比例间址EA=ESI*8(5)基址加间址寻址EA=(BP)+(SI)(6)带位移的基址加间址寻址EA=(BX)+(DI)+20H(7)间址寻址EA=(SI)(8)寄存器寻址(9)基址加比例间址寻址EA=(ESI)+(EDI)*2(10)寄存器寻址注意:◆ 16位寻址: BX和BP作为基址寄存器.BX以DS作为默认段寄存器,BP以SS为默认段寄存器.SI和DI作为间址寄存器. 默认DS为段寄存器◆ 32位寻址: 8个32位通用寄存器均可作为基址寄存器,其中ESP,EBP以SS为默认段寄存器,其余均以DS为默认段寄存器.除ESP外的其它7个寄存器均可作间址寄存器,EBP默认SS作段基址寄存器,其它以DS作段基址寄存器3-7 32位微机工作在实地址模式下, 已知(DS) = 1000和(SS) = 2000H, (SI) = 007FH, (BX) = 0040H, (BP) = 0016H, 变量TABLE的偏移地址为0100H. 指出下列指令中源操作数的寻址方式,求它的有效地址(EA)和物理地址(PA).(1)MOV AX, [1234H](2)MOV AX, TABLE(3)MOV AX, [BX+100H](4)MOV AX, TABLE[BP][SI]解:(1)直接寻址EA=1234H PA=(DS)*16 + EA = 11234H(2)直接寻址EA=(TABLE)=0100H PA=(DS)*16+EA=10100H(3)基址寻址EA=(BX)+100H=0140H PA=(DS)*16+EA=10140H(4)带位移的基址加间址寻址EA=(BP)+(SI)+TABLE=0195H PA=(SS)*16+EA=20195H注意: 当基址寄存器和间址寄存器默认的段寄存器不同时,一般规定,由基址寄存器来决定默认的段寄存器为段基址寄存器. 这里BP为基址寄存器,所以默认SS为段基址寄存器.3-8 指出下列指令的错误,并加以改正.(1)MOV DS, 100(2)MOV 1020H, DX(3)SUB [1000H], [SI](4)PUSH AL(5)IN AL, [80H](6)MOV DS, ES(7)JMP BX(8)SHR DX, 4(9)OUT 380H, AX(10)ADD AL, BX(11)POP CS(12)MOV CL, 3300H解:(1)立即数不能直接传送到段寄存器中去应改为: MOV AX, 100MOV DS, AX(2)立即数只能出现在源操作数位置应改为: MOV DX,1020H(3)源操作数和目标操作数不能同时为寄存器寻址应改为: MOV AX, [1000H]SUB AX, [SI](4)PUSH指令不能操作8位数据应改为: PUSH AX(5)[80H ]不是端口IN AL ,80H应改为: IN AL, 80H(6)两个段寄存器之间不能直接传送应改为: MOV AX, ESMOV DS,AX(7)对(8)移位次数超过1的时候,要把移位次数放入CL中应改为: MOV CL, 4SHR DX, CL(9)端口地址大于255时,要把地址放入DX中应改为: MOV DX, 380HOUT DX, AX(10)源操作数和目标操作数不匹配应改为: ADD AX, BX(11)POP指令只能使用在存储器或通用寄存器可改为: POP AX(12)源操作数和目标操作数不匹配应改为: MOV CX, 3300H3-9 已知: (DS) = 091DH, (SS) = 1E4AH, (AX) = 1234H, (BX) = 0024H, (CX) = 5678H, (BP) = 0024H, (SI) = 0012H, (DI) = 0032H, [09226H] = 00F6H, [09228H] = 1E40H, [1E4F6H] = 091DH. 试求下列各指令单独执行后的结果.(1)MOV CL, 20H[BX][SI] ; (CL) = ?(2)MOV [BP][DI], CX ; [IE4F6H] = ?(3)LEA BX, 20H[BX][SI] : (BX) = ?MOV AX, 2[BX] : (AX) = ?(4)LDS SI, [BX][DI]MOV [SI], BX ; (SI]) = ?(5)XCHG CX, 32H[BX] ; (AX) = ?XCHG 20[BX][SI], AX ; [09226H] = ?解:(1)(CL) = 00F6H(2)[IE4F6H] = 5678H(3)(BX) = 0056H(AX) = 1E40H(4)(SI)= 0024H(5)(AX) = 5678H[09226H] = 1234H3-10 已知(AL) = 0C4H, DA TA单元中内容为5AH, 写出下列每条指令单独执行后的结果(ODITSZAPC:0---xxux0)(1)AND AL, DA TA(2)OR AL, DA TA(3)XOR AL, DATA(4)NOT DATA(5)AND AL, 0FH(6)OR AL, 1H(7)XOR AL, 0FFH(8)TEST AL, 80H解:(1)(AL) = 40H CF=0,OF=0,SF=0,ZF=0,PF=0,AF无定义(2)(AL) = DEH CF=0,OF=0,SF=1,ZF=0,PF=1,AF无定义(3)(AL) = 9EH CF=0,OF=0,SF=1,ZF=0,PF=0,AF无定义(4)(AL) = A5H 不影响任何标志位(5)(AL) = 04H CF=0,OF=0,SF=0,ZF=0,PF=0,AF无定义(6)(AL) = C5H CF=0,OF=0,SF=1,ZF=0,PF=1,AF无定义(7)(AL) = 3BH CF=0,OF=0,SF=0,ZF=0,PF=0,AF无定义(8)(AL)不变=0C4H CF=0,OF=0,SF=1,ZF=0,PF=0,AF无定义3-12 (AL)=8EH,(BL)=72H,执行以下指令后,标志位OF、SF、ZF、AF、PF和CF的值是什么?(1)ADD AL,BL(2)AND BL,AL(3)CMP AL,BL(4)SHL AL,1解:(1)OF=0,SF=0,ZF=1,AF=1,PF=1,CF=1(2)OF=0,SF=0,ZF=0,AF=(未定义),PF=0,CF=0(3)OF=1,SF=0,ZF=0,AF=0,PF=0,CF=0(4)OF=1,SF=0,ZF=0,AF=(未定义),PF=0,CF=13-15 试用CMP指令和无条件指令实现以下判断(1)AX和CX中的内容均为无符号数①(AX)>(CX)则转至BIGGER标号执行②(AX)<(CX)则转至LESS标号执行(2)BX和DX中的内容均为有符号数①(BX)>(DX)则转至BIGGER标号执行②(BX)<(DX)则转至LESS标号执行解:(1)CMP AX,CXJA BIGGERJB LESS(2)CMP BX,DXJG BIGGERJL LESS第四章汇编语言程序设计4-9 试用伪指令编写一数据段与下面程序等效。

微机原理及应用A离线作业

微机原理及应用A离线作业

微机原理及应用A第一次作业三、主观题(共9道小题)31.32.假设(SS)=2250H,(SP)=0140H,如果在堆栈中存入5个数据,则栈顶的物理地址为_2 2636H;。

如果又从堆栈中取出3个数据,则栈顶的物理地址为2263CH。

33.汇编语言源程序中的语句主要有两种类型:指令性语句和指示性语句。

源程序汇编、连接后,不能产生对应目标代码的语句是:_指示性_语句。

34. 8088/8086微处理器由哪几部份组成?各部分的功能是什么?8088/8086微处理器由两大功能结构单元组成,即总线接口单元BIU(Bus Interface Unit)和执行单元EU(Execution Unit)。

前者包括4个段寄存器CS、DS、SS、ES;1个指令指针寄存器IP;1个与EU通信的内部寄存器;先入先出指令队列缓冲器(8088:4个字节;8 086:6个字节);总线控制逻辑和计算20位物理地址的加法器。

后者包括8个通用寄存器、1个标志寄存器、算术逻辑单元ALU和EU控制电路。

BIU的功能:负责与存储器、I/O接口传送信息。

具体包括:取指--当EU从指令队列中取走指令,指令队列出现空字节时,BIU即从内存中取出后续的指令代码放入队列中,完成指令缓冲。

取数/存数--配合EU的请求,完成与CPU外部的数据交换。

产生地址--根据EU送来的16位偏移地址,通过地址产生器生成20位的物理地址。

EU的功能:执行指令。

具体包括:EU从指令队列取出指令代码,将其译码,发出相应的控制信号。

ALU进行算术、逻辑运算。

运算结果的特征保留在标志寄存器FLAGS中。

通用寄存器组暂存操作数据或中间结果。

35.何为微处理器的系统总线?有几种?功能是什么?系统总线是微型计算机各功能部件之间传送信息的公共通道。

包括:地址总线(AB-Add ress Bus ):传送地址信息的总线。

数据总线(DB-Data Bus ):传送数据信息的总线。

控制总线(CB-Control Bus ):传送控制信息的总线。

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

浙江大学远程教育学院《微机原理与接口技术》课程作业姓名:周武建学号:713129202027年级:13秋电气学习中心:华家池—————————————————————————————第二章P472.80C51单片微机芯片引脚第二功能有哪些?P0口(地址总线A0-A7/数据总线D0-D7)P2口(地址总线A8-A15)RXD(串行输入口)TXD(串行输出口)INT0(外部中断 0)INT1(外部中断 1)T0(定时器0外部输入)T1(定时器1外部输入)WR(外部数据存储器写选通)RD(外部数据存储器写选通)4.80C51存储器在结构上有何特点?在物理上和逻辑上各有哪几种地址空间?访问片内数据存储器和片外数据存储器的指令格式有何区别?1)80C51在结构上的特点80C51采用将程序存储器和数据存储器截然分开,分别寻址的结构,称为Harvard 结构。

(2)在物理和逻辑上的地址空间存储器上设有4个存储器空间:片内程序存储器、片外程序存储器、片内数据存储器、片外数据存储器。

在逻辑上有3个存储器地址空间:片内、片外统一的64KB程序存储器地址空间,片内256B数据存储器地址空间,片外64KB的数据存储器地址空间。

(3)访问格式访问片内RAM采用MOV格式访问片外RAM采用MOVX格式6.80C51片内数据存储器低128个存储单元划分为哪4个主要部分?各部分主要功能是什么?80C51的内存分配表00H-1FH共32字节单元为4组R0-R7的工作寄存器(4组,每组8个字节单元)20H-2FH共16字节单元(共128位)为位寻址区(16字节,每字节8位,共128位)30H-7FH共80字节单元为用户存储区(用来存储用户的运算结果和变量等)80H-FFH共128字节单元为特殊功能寄存器区(也就是内部各种功能配置寄存器)80C51的总的来说比较少,有很多空余的没有用到。

像AVR的Atmeag16单片机则特殊功能寄存器有很多,有32个寄存器地址和64个IO口地址,大部分都用上了,空余的不多,都是内部RAM的一部分。

寄存器是存储器中的一个特殊形式,主要用于配置最低层的硬件工作方式状态及和内部其它各部件的联系第三章P879.MOV、MOVC、MOVX 指令有什么区别,分别用于那些场合,为什么?MOV片内RAM单元间数据传送MOVX片外RAM单元间数据传送MOVC查表指令15.已知(R1)=20H,(20H)=AAH,请写出执行完下列程序段后A的内容。

MOV A,#55HANL A,#0FFHORL 20H,AXRL A,@R1CPL AA的内容的内容为AAH16.阅读下列程序,说明其功能。

MOV R0,#30H 把#30H移动到存储器R0MOV A,@R0 把A移动到地址@R0RL AMOV R1,A 把R1移动到存储器ARL ARL AADD A,R1 将R1和A相加存入R1MOV @R0,A 把@R0的内容移动到A17.已知两个十进制数分别从内部数据存储器中的40H单元和50H单元开始存放(低位在前),其字节长度存放在内部数据存储器的30H单元中。

编程实现两个十进制数求和,并把和的结果存放在内部数据存储器40H开始的单元中。

21.读程序,请⑴画出P1.0~P1.3引脚上的波形图,并标出电压V-时间T坐标;⑵加以注释。

ORG 0000HSTART: MOV SP,#20HMOV 30H,#01HMOV P1,#01MLP0:ACALL D50ms ; 软件延时50mS MOV A, 30HCJNE A, #08H,MLP1MOV A, #01HMOV DPTR,#ITABMLP2∶MOV 30H, AMOVC A,@A+DPTRMOV P1, ASJMP MLP0MLP1:INC ASJMP MLP2ITAB: DB 0,1,2,4,8DB 8,4,2,1D50ms:…; 延时50ms子程序(略) RET第四章P1236 .根据运算结果给出的数据到指定的数据表中查找对应的数据字。

运算结果给出的数据在片内数据存储器的40H 单元中,给出的数据大小在00~0FH 之间,数据表存放在20H 开始的片内程序存储器中。

查表所得数据字(为双字节、高位字节在后)高位字节存于 42H 、低位字节存于41H 单元。

其对应关系为:给出数据;00 01 02…… 0D H 0EH 0FH对应数据:00A0H 7DC2H FF09H 3456H 89ABH 5678H 请编制查表程序段,加上必要的伪指令,并加以注释。

10.把长度为10H的字符串从内部数据存储器的输入缓冲区INBUF向设在外部数据存储器的输出缓冲区OUTBUF进行传送,一直进行到遇见回车字符“CR”结束传送或整个字符串传送完毕。

加上必要的伪指令,并对源程序加以注释。

ORG 0000HSJMP MAINORG 0030HMAIN:MOV R0,#40H ;被加数首址,又作两个十进制数和的首址MOV R1,#50H ;加数首址MOV R2,30H ;字节长度CLR CPP: MOV A,@R1 ;取加数ADDC A,@R0 ;带进位加DA A ;二—十进制数调整MOV @R0,A ;存和NC R0 ;修正地址INC R1DJNZ R2,PP ;多字节循环加AJMP $END12.比较两个ASCII码字符串是否相等。

字符串的长度在内部数据存储器的20H 单元,第一个字符串的首地址在内部数据存储器的30H中,第二个字符串的首地址在内部数据存储器的50H中。

如果两个字符串相等,则置用户标志F0为0;否则置用户标志F0为1。

加上必要的伪指令,并加以注释。

(注:每个ASCII 码字符为一个字节,如ASCII码“A”表示为41H)14. 80C51单片机从内部数据存储器的31H单元开始存放一组8位带符号数,字节个数在30H中。

请编写程序统计出其中正数、零和负数的数目,并把统计结果分别存入20H、21H和22H三个单元中。

加上必要的伪指令,并对源程序加以注释。

16.将外部数据存储器的2040H单元中的一个字节拆成2个ASCII码,分别存入内部数据存储器40H和41H单元中,试编写以子程序形式给出的转换程序,说明调用该子程序的入口条件和出口功能。

加上必要的伪指令,并加以注释。

17.根据8100H单元中的值X,决定P1口引脚输出为:2X X>0P1= 80H X=0 (-128D≤X≤63D)X变反X<022.编写求一组无符号数中最小值的子程序,入口条件为:内部数据存储器的20H 和21H中存数据块的起始地址,22H中存数据块的长度,求得的最小值存入30H 中。

第五章p1411.什么是中断?在单片微机中中断能实现哪些功能?7.80C51共有哪些中断源?对其中断请求如何进行控制?12.80C51的中断与子程序调用有哪些异同点,请各举两点加以说明。

第六章P1611. 80C51单片微机内部设有几个定时器/计数器?简述各种工作方式的功能特点?5.在80C51单片微机系统中,已知时钟频率为6MHz,选用定时器T0方式3,请编程使P1.0和P1.l引脚上分别输出周期为2ms和400μs的方波。

加上必要的伪指令,并对源程序加以注释。

14.监视定时器T3功能是什么?它与定时器/计数器T0、T1有哪些区别?第七章P186⒌简述串行通信接口芯片UART的主要功能?⒎80C51单片微机串行口共有哪几种工作方式?各有什么特点和功能?12. 80C51单片微机串行口共有 4 种工作方式,它们的波特率分别为晶振的1/12 ,波特率可变,波特率为晶振的1/32或1/64 ,波特率可变。

第八章P2591.简述单片微机系统扩展的基本原则和实现方法。

2. 如何构造80C51单片机并行扩展的系统总线?总线. ①片内总线. 片总线( ②片总线(又称元件级总线或局部总线). 内总线( ③内总线(又称微型机总线或板级总一般称为系统总线). 线,一般称为系统总线). 外总线(又称通信总线). ④外总线(又称通信总线). 图6-1 微型机各级总线示意图 2.总线的类型地址总线. ①地址总线.是微机用来传送地址的信号线. 信号线.地址线的数目决定了直接寻址的范围. 范围. 数据总线.②数据总线.是传送数据和代码的总一般为双向信号线, 线,一般为双向信号线,既可输入也可输数据总线也采用三态逻辑. 出.数据总线也采用三态逻辑. 控制总线.传送控制信号的总线, ③控制总线.传送控制信号的总线, 用来实现命令,状态传送,中断, 用来实现命令,状态传送,中断,直接存储器传送的请求与控制信号传送, 储器传送的请求与控制信号传送,以及提供系统使用的时钟和复位信号等. 供系统使用的时钟和复位信号等. 电源和地线.14.已知可编程I/O接口芯片8255A的控制寄存器的地址为BFFFH,要求设定A 口为基本输入,B口为基本输出,C口为输入方式。

请编写从C口读入数据后,再从B口输出的程序段。

并根据要求画出80C51与8255A连接的逻辑原理图。

加上必要的伪指令,并对源程序加以注释。

1.答:ORG 0000HAJMP MAINORG 0030HMAIN: MOV DPTR,#2000HMOV B,20H ;设定的温度值送BMOVX A,@DPTR ;取实测温度值CLR CSUBB A,BJNC LOWER ;实测温度值>设定温度值,P1.0输出低电平MOV B,20H ;取设定的温度值MOVX A,@DPTR ;取实测温度值CLR CSUBB A,BJC HIGH ;实测温度值<设定温度值,P1.0输出高电平SJMP MAIN ;实测温度值=设定温度值,P1.0输出不变LOWER: CLR P1.0SJMP MAINHIGH: SETB P1.0SJMP MAINEND2.答:ORG 0000HMOV DPTR,#2000H ;无符号数存放单元首址MOV R1,#10D ;无符号数长度MOV 40H,#00H ;最大值存放单元预置为最小值STEP:MOVX A,@DPTR ;取数CJNE A,40H,STEP1 ;比较大小SJMP NEXT ;(A)=(40H),不交换STEP1:JC NEXT ;(A)<(40H),不交换MOV 40H,A ;(A)>(40H),则较大值存入40H中NEXT:INC DPTRDJNZ R1,STEPSJMP $END19.D/A转换器是将数字信号数字转换为模拟信号,DAC0832具有直通方式,单缓冲方式,双缓冲方式三种工作方式,其主要技术性能有分辨率,转换精度,转换速率/建立时间。

22.利用ADC0809芯片设计以80C51为控制器的巡回检测系统。

(8路输入的采样周期为1秒,)其它末列条件可自定。

相关文档
最新文档