课程设计报告打字练习程序设计.doc

上传人:laozhun 文档编号:2882900 上传时间:2023-03-01 格式:DOC 页数:23 大小:386KB
返回 下载 相关 举报
课程设计报告打字练习程序设计.doc_第1页
第1页 / 共23页
课程设计报告打字练习程序设计.doc_第2页
第2页 / 共23页
课程设计报告打字练习程序设计.doc_第3页
第3页 / 共23页
课程设计报告打字练习程序设计.doc_第4页
第4页 / 共23页
课程设计报告打字练习程序设计.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《课程设计报告打字练习程序设计.doc》由会员分享,可在线阅读,更多相关《课程设计报告打字练习程序设计.doc(23页珍藏版)》请在三一办公上搜索。

1、课程设计任务书学生姓名: * 专业班级: 电信0802 指导教师: * 工作单位: 信息工程学院 题 目:打字练习程序设计初始条件:具备数字电路的理论知识;具备微机原理的理论知识和实践能力;熟悉汇编语言编程技术;熟悉80X86的CPU结构和指令系统;熟悉相关常用接口电路的设计使用方法。要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1、随机显示一段字符(可含有字母和数字)2、根据屏幕显示进行打字练习,出错时声响报警3、打字完成后统计正确率和打字时间4、程序采用汇编语言在PC机上完成5、完成符合学校要求的设计说明书时间安排:一周,其中2天程序设计,2天程序调试,1

2、天完成课程设计报告书及答辩指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日1.设计概述2设计题目2设计要求2设计方案22.硬件说明38255a介绍38253a介绍33.软件流程9软件流程图94.部分结果截图115.调试正确的程序清单126.设计心得16 摘要本次课程设计是利用微机原理知识和汇编语言来完成打字练习的程序设计,是要求可以显示打字时间,正确率等趣味练习。能够正确运用书上的语句进行简单功能的设计,在不断的编程与检查问题的过程中提高自己的能力,真正达到学习知识的目的。对典型的微机应用系统进行设计,要求根据具体的课题题目画出系统结构框图、系统接线图;能用所学习的汇编语言进行

3、典型的程序设计并上机进行调试。本次设计主要运用了8255A和8253A两个芯片。其中8255A是Intel公司生产的为x86系列CPU配套的可编程并行接口芯片,也可以用于其他微处理器系统中。通过对它进行编程,芯片可工作于不同的工作方式。在微型计算机系统中,用8255A作接口时,通常不需要附加外部逻辑电路就可直接为CPU提供数据通道,因此得到了极为广泛的应用。8253A是可编程定时计数器,它是Intel公司专为x86系列CPU配置的外围接口芯片。它在微机系统中可用作定时器和计数器。定时时间与计数次数由用户事先设定。 关键词:汇编语言、8255A、8253A1. 设计概述 设计题目 打字练习程序设

4、计 设计要求1、随机显示一段字符(可含有字母和数字)2、根据屏幕显示进行打字练习,出错时声响报警3、打字完成后统计正确率和打字时间4、程序采用汇编语言在PC机上完成5、完成符合学校要求的设计说明书用LED 点阵显示器LDM-1088AX 来随机显示26 个英文字母,以按 az 26 个键来模拟打字,如果在某个字母点亮期间按下相应字母键,表示打字正确并熄灯,记录击中次数。实现下列功能:1.用数字按键选择打字练习的速度(即点阵上字母刷新的速度);2.按键开始打字练习;3.点阵显示的字母以一定速度(如每1 秒或2 秒换一个字母)刷新,打字需在该字母的点亮期间进行才算有效;4.若在某个字母的出现时间内

5、未有打字动作,则该次打字失败,屏幕上显示“超时”;5.若一次打字错误,屏幕上显示“错误”, 微机发出一次短暂的鸣响,并且在该字母未被更新之前还可以进行第二次、第三次打字动作;6.每次打字正确,屏幕上显示“正确”,并将灯全部熄灭,分数加1;7.按键退出打字过程,显示所得的分数;.退出后屏幕上显示继续游戏的提示。 设计方案 设计方案选择与讨论(1)本课程设计通过对8253 的设置,使之产生一定频率的波形,将该波形输出到中断口IRQ。每次进入中断都刷新LED点阵上的字母显示,从而控制打字练习的速度。通过改变8253的计数初值可以改变速度。(2)8253 通道1 工作于方式3,输入1MHZ 的时钟,设

6、置分频系数为1000,输出1KHZ 的方波,此输出作为通道0 的输入时钟。通道0 工作于方式3,分频系数为 用户输入的速度等级1000。 注:速度等级:1-快速 2-中速 3-慢速(3)将8255 的A 口接到LED 点阵的COL18,C 口接到LED 点阵的ROW18,每当进入中断,就把在数据段存好的字母的段码送到A 口和C 口,显示相应的字母。(4) 每个字母都需要分段循环显示,利用人眼的视觉暂留便可看见点阵上显示整个字母。(5)为避免中断服务程序过长,在写中断服务程序时,只需要把中断标志置1即可,其余操作可在主程序中进行。(6)在字母显示期间,要不断读取按键输入,直到按键正确或进入下一次

7、中断(即表示该字母的出现时间已经结束),准备出现下一个字母。(7)在字母显示期间,若读入的按键是错误的,则在屏幕上显示“错误”,并继续显示该字母,等待按键或中断;若未能在字母消失前按下正确的键,则在屏幕上显示“超时”,并显示下一个字母;若在字母消失前按下正确的键,则在屏幕上显示“正确”,往A 口和C 口输出00H,使字母消失,分数加1,并准备显示下一个字母。(8)在字母显示期间,若按键输入是键则结束本次游戏。每次游戏结束后进入等待按键的状态按键退出程序,按键则开始下一次游戏。2. 硬件说明 8255A介绍8255A是Intel公司生产的为x86系列CPU配套的可编程并行接口芯片,也可以用于其他

8、微处理器系统中。通过对它进行编程,芯片可工作于不同的工作方式。在微型计算机系统中,用8255A作接口时,通常不需要附加外部逻辑电路就可直接为CPU提供数据通道,因此得到了极为广泛的应用。B 组控制部件内部DB(8)数据总线缓冲器读/写控制逻辑A0A组端口A(8)A组端口C(高4位)B组端口C(低4位)B组端口B(8)A 组控制控制部件部件件PA7PA0PC7PC4PC3PC0PB7PB0D7D0CSA1RDWR 8255A内部结构框图RESET1. 8255A内部结构8255A的内部结构框图如上图所示,其内部由以下四部分组成。 (1) 端口A、端口B和端口C端口A、端口B和端口C都是8位端口,

9、可以选择作为输入或输出。还可以将端口C的高4位和低4位分开使用,分别作为输入或输出。当端口A和端口B作为选通输入或输出的数据端口时,端口C的指定位与端口A和端口B配合使用,用做控制信号或状态信号。 (2) A组控制和B组控制部件这两组控制部件有两个功能:一是接收来自芯片内部数据总线上的控制字;二是接收来自读写控制逻辑电路的读写命令,以此来决定两组端口的工作方式和读写操作。(3)数据总线缓冲器它是一个双向三态的8位数据缓冲器,8255A正是通过它与系统数据总线相连。输入数据、输出数据、CPU发给8255A的控制字都是通过该部件传递的。(4) 读写控制逻辑电路读/写控制逻辑电路的功能是负责管理82

10、55A的数据传输过程。它接收CS及来自地址总线的信号A1、A0(在8086总线中为A2、A1)和控制总线的信号RESET、WR、RD,将它们组合后,得到对A组控制部件和B组控制部件的控制命令,并将命令送给这两个部件,再由它们完成对数据信息,状态信息和控制信息的传输。2. 8255A的工作方式8255A共有三种工作方式:1方式0为基本输入/输出方式,方式0下,可供使用的是两个8位口(A口和B口)及两个4位口(C口高4位部分和低4位部分)。四个口可以是输入和输出的任何组合。方式0适用于无条件数据传送,也可以把C口的某一位作为状态位,实现查询方式的数据传送。2方式1为选通输入/输出方式,A口和B口分

11、别用于数据的输入/输出。而C口则作为数据传送的联络信号。A口和B口的联络信号都是三个,如果A或B只有一个口按方式1使用,则剩下的另外13位口线仍然可按方式0使用。如果两个口都按方式1使用,则还剩下2位口线,这两位口线仍然可以进行位状态的输入输出。方式1适用于查询或中断方式的数据输入/输出。8255作为输入时如下图。输入过程如下:当输入设备准备好数据,将数据送至PA7PA0或PB7PB0,同时发 ,在 下降沿控制下,8255将PA7PA0或PB7PB0上的数据锁存到A口或B口数据输入寄存器中,同时8255向输入设备发IBF有效,告知输入设备暂缓送数。8255A可以两种方式通知CPU取走数据: 第

12、一种方式是用中断方式,在INTE=1IBF=1时, 的上升沿使INTR=1,8255向CPU提出中断申请,CPU以中断方式取走数据,在CPU响应中断后,执行IN指令,将8255 A口或B口数据输入寄存器中的数据取走,同时, 信号的下降沿清除INTR信号, 信号的上升沿复位IBF。输入设备仅当检测到IBF为低电平后,才开始传送下一个数据,如此循环;第二种方式是用软件查询,CPU仅当查询到IBF=1时,才从8255A 口或B口数据输入寄存器中取走数据。 8255作为输出时如下图所示。输出过程如下:首先CPU执行OUT指令,在 信号的下降沿CPU输出的数据送入8255数据输出缓冲器,并使INTR复位

13、。 信号上升沿将 置为有效,通知输出设备,CPU已把数据输出到8255的指定端口中,输出设备接到信号有效后,发有效,下降沿将 置为1, 上升沿表示输出设备已从8255A指定端口取走数据,此时若INTE=1,则INTR被置为高电平,向CPU申请中断,CPU可采用中断方式输出下一个数据。CPU也可通过查询 信号,若 =1,CPU输出下一个数据给8255A,即查询方式传送数据。3方式2双向数据传送方式。只允许A口工作在方式2,当A口工作在方式2时,B口可工作在方式0或方式1。 所谓双向,即A口可分时进行I/O操作。 A口工作在方式2,信号联络线如下: (PC6), (PC7), (PC4),IBFA

14、(PC5); INTE1(PC6)与输出中断有关,可由用户给8255A控制字寄存器送PC6的置位/复位字来实现允许/禁止A口输出中断。 INTE2(PC4):与输入中断有关,可由用户给8255A控制字寄存器送PC4的置位/复位字来实现允许/禁止A口输入中断。 INTRA(PC3):I/O中断申请,高电平有效,产生中断请求信号的条件为: INTRA=IBFAINTE2 (输入中断); INTRA= INTE1 (输出中断)。 在本设计系统中运用的是工作方式0,这种方式比较简单。在这里,主要是A口用于输入,与8个常开型开关连接,用于采集输入。3. 8255A的控制字 (1) 工作方式选择控制字 它

15、可以使8255A的三个端口工作于不同的工作方式。方式控制字的特征位D7A口工作方式0 0 方式00 1 方式11 方式21D6D5D4D3D2D1D0A口输入/输出1 输入0 输出 C口高四位位输入/输出1 输入0 输出B口工作方式0 方式01 方式1B口输入/输出1 输入0 输出C口低四位输入/输出1 输入0 输出(2) C口按位置位/复位控制字8255A的C口具有位控功能,即端口C的8位中的任一位都可通过CPU向8255A的控制寄存器写入一个按位置位/复位控制字来置1或清0,而C口中其他位的状态不变。8253A介绍8253A是可编程定时计数器,它是Intel公司专为x86系列CPU配置的外

16、围接口芯片。它在微机系统中可用作定时器和计数器。定时时间与计数次数由用户事先设定。1. 8253A内部结构数据总线缓冲器D7 D0 计数器0RDA0WR计数器1读 / 写逻 辑A1CS计数器2控 制寄存器四大部分:数据总线缓冲器、读写控制逻辑、控制字寄存器以及三个独立的16位的计数器通道。这三个计数器分别是计数器0通道、计数器1通道和计数器2通道。(1)数据总线缓冲器:8位的双向三态缓冲器。用于暂存数据,使用在以下几个方面:CPU在初始化编程时,向8253写入控制字。CPU向某一通道写计数初值。CPU从某一通道读计数初值。(2)读写控制逻辑电路:接受输入的RD、WR、CS、A1、A0等信号组合

17、产生出对8253要执行的操作,见操作表。(3)控制字寄存器:只能写入,不能读出。8初始化编程时,写入控制字决定通道的工作方式。(4)3个计数器:分别为0、1和2,是3个独立的计数定时通道,都可按不同的方式工作。每个计数器内部都包含一个16位的预置初始值寄存器。一个可预置数减法计数器和一个锁存器。2. 8253A的工作方式(1) 方式0:计数结束产生中断方式 当写入控制字后,OUT变为低电平,当写入初值后立即开始计数,当计数结束时,变成高电平。 (2) 方式1:可编程单次脉冲方式 当初值装入后且GATE由低变高时,OUT变为低电平,计数结束变为高电平。 (3) 方式2:频率发生器方式 当初值装入

18、时,OUT变为高;计数结束,OUT变为低。该方式下如果计数未结束,但GATE为低时,立即停止计数,强制OUT变高,当GATE再变高时,便启动一次新的计数周期。(4) 方式3:方波发生器 当装入初值后,在GATE上升沿启动计数,OUT 输出高电平; 当计数完成一半时,OUT输出低电平。 (5) 方式4:软件触发选通 当写入控制字后,OUT输出为高;装入初值且GATE为高时开始计数,当计数结束,OUT端输出一个宽度等于一个时钟周期的负脉冲。 (6) 方式5:硬件触发选通在GATE上升沿启动计数器,OUT一直保持高电平;计数结束,OUT端输出一个宽度等于一个时钟周期的负脉冲。 3.2. 8253A的

19、控制字BCDM0M1M2RL0RL1SC0SC1RL1BCDM0M1M2RL0SC0SC10二进制码读写001方式1000方式001只读写低字节01计数器100计数器01 BCD码读写*10方式2000方式011先低再高10只读写高字节10计数器2*11方式311非法101方式5100方式400将CE送OL8255A的控制字格式3软件流程开始1.软件流程图输入速度等级并显示,把速度等级转化为分频系数输入速度等级并显示,把速度等级转化为分频系数初始化8255,方式0,A 口输出,B 口输出,C 口输出.设置中断向量,开放IRQ7 中断,段寄存器重新赋值.清记分器CL,清中断标致BH, SI 指向

20、随机字母表MES1按键开始游戏,开中断NBH1? BH0;产生一个随机数,把SI+随机数指向的字符存入AL BH0;产生一个随机数,把SI+随机数指向的字符存入AL提示超时判断AL 中的字符是az 中的哪一个,并让DI 指向相应字母的码表 分3 段循环把该字母的码表输出到A口和C口,输出的过程中查询中断标志和键盘按键正确?退出本次游戏错误提示向A 口和C 口输出00H,使该字母消失,提示正确,鸣响一次,分数加1(INC CL)把存在CL 中的分数转换为十进制显示出来提示开始下一次游戏或结束BH1?N输入Y结束Y2.2、功能图:3.2、各功能模块及流程图 输出正确率模块 计算打字时间并输出模块

21、4部分结果截图经过对程序的连接和编译,生成的可执行文件,进入界面如上图所示:游戏过程的界面如上图:5. 调试后的正确程序清单STACK SEGMENT ;堆栈段DB 100STACK ENDSDATA SEGMENT ;数据段IOPORT EQU 0C400H-0280HPORT0 EQU IOPORT+2B0H ;8279 数据端口PORT1 EQU IOPORT+2B1H ;8279 控制端口LED DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H ;LED字型代码表DB 67H,37H,73H,31H,3

22、EH,36H,66HIO8253A EQU IOPORT+280H ;8253计数器0端口IO8253B EQU IOPORT+283H ;8253控制器端口IO8255A EQU IOPORT+288H ;8255端口A地址IO8255B EQU IOPORT+28BH ;8255控制端口地址 IO0832A EQU IOPORT+290H ;0832数据输入端口WAVE DB 80H,96H,0AEH,0C5H,0D8H,0E9H,0F5H,0FDH DB 0FFH,0FDH,0F5H,0E9H,0D8H,0C5H,0AEH,96H DB 80H,66H,4EH,38H,25H,15H,0

23、9H,04HDB 00H,04H,09H,15H,25H,38H,4EH,66H ;正弦波数据,32个TIME DB 120,110,100,89,79,70,60,50 ;产生不同音阶时8253的计数器初值MSG1 DB PLEASE PRESS ONE OF 0,1,2,3,4,5,6,7,8,R,:,0DH,0AH ;程序开始时的提示信息DB FUNCTION:,0DH,0AH DB 0 = EDIT MUSIC AND END WITH 9,LESS THEN 100 DB R = RETURN TO DOS,0DH,0AH,$ ;R返回DOSMSG2 DB 0DH,0AH,INPUT

24、 ERROR,TAKE A RECHOICE,0DH,0AH,0DH,0AH,$ ;输入错误的提示信息DATA ENDSCODE SEGMENT ;代码段ASSUME CS:CODE,DS:DATASTART: MOV AX,DATAMOV DS,AX MOV DX,PORT1 ;初始化8279芯片MOV AL,0D3HOUT DX,AL ;清除8279内部显示RAM状态为全“0”MOV AL,2AHOUT DX,AL ;设定8279分频系数MOV AL,40H OUT DX,AL ;读FIFO/传感器MOV AL,00HOUT DX,AL ;键盘、显示器方式设置:8个8位字符左端传人,编码扫

25、描键盘MOV AL,80HOUT DX,AL ;写显示器RAM命令LEA DX,MSG1 ;显示提示信息MOV AH,09HINT 21HBEGIN: CALL JUDGEKEY ;调用键盘程序,判断输入LP0: CMP AL,13H ;R键,返回DOS命令JNZ LP1MOV AX,4C00H ;返回DOSINT 21HLP1: CMP AL,1 ;输入是否超出范围,是则跳到提示出错程序段 JB ERR CMP AL,7 JA ERR CALL SOUND ;调用发音子程序,播放按下的相应音阶 JMP BEGIN ;返回初始界面MUSI: MOV AL,DI ;音乐播放程序段 CMP AL,

26、9 ;检查是否为当前音乐结束标志9 JZ BEGIN ;是则跳回初始界面 MOV BUFF,AL ;将当前音阶存入缓冲 CALL SOUND ;调用发音子程序 INC DI ;取下一音阶 JMP MUSI ;重复 ERR: LEA DX,MSG2 ;提示出错程序段 MOV AH,09H ;显示提示出错信息 INT 21H LEA DX,MSG1 ;回到初始界面 INT 21H JMP BEGIN JUDGEKEY PROC NEAR ;键盘输入判断程序 MOV DX,PORT1 MOV AL,0D1H OUT DX,AL ;清LED显示READ: MOV DX,PORT1 IN AL,DX A

27、ND AL,07H JZ READ ;读状态,看键盘是否有键按下,无则继续读取KEYN: MOV DX,PORT0 ;有键按下,判断按键位置 IN AL,DXMOV BL,ALAND AL,07HAND BL,38HMOV CL,03SHR BL,CLCMP BL,00HJNZ LINE2ADD AL,08H ;为第一行的键,键位值加08HJMP QUIT1 LINE2: CMP BL,01H JNZ LINE3JMP QUIT1 ;为第二行的键,直接返回LINE3: ADD AL,10H ;为第三行的键,键位值加10HQUIT1: MOV BUFF,AL ;将键位信息存入BUFF RETJU

28、DGEKEY ENDPDISP PROC NEAR ;显示子程序 PUSH AX MOV AX,DATA MOV DS,AX MOV DX,PORT1 MOV AL,80H ;写8279显示RAM控制字 OUT DX,AL LEA SI,BUFF ;将BUFF的地址赋给SI LEA BX,LED ;将LED的起始地址赋给BXDISP1: MOV AL,SI ;将BUFF地址存储的内容赋给AL XLAT ;完成一个字节的查表转换,即BX+AL赋给ALMOV DX,PORT0 ;将显示信息输出显示OUT DX,AL POP AX RETDISP ENDP SOUND PROC NEAR ;发音子程

29、序CALL DISP ;调用显示子程序,发音的同时显示音阶 MOV NUM,AL ;求出相应的时间常数的序号 MOV CX,60 ;取60次32个正弦波数据DDD: MOV SI,0LLL: MOV AL,WAVESI ;取正弦波数据 MOV DX,IO0832A OUT DX,AL ;放音 CALL DELAY ;调用延时子程序 INC SI ;SI加1 CMP SI,32 ;是否取完32个数据JL LLL ;若没有,则继续LOOP DDD ;总循环次数60是否完,没有,则继续EXIT: RETSOUND ENDP DELAY PROC NEAR ;延时子程序CCC: MOV BX,OFFS

30、ET TIMEMOV DX,IO8253B ;设定8253计数器1为方式0工作MOV AL,10H OUT DX,ALMOV DX,IO8255B ;设8255A口输入MOV AL,9BH OUT DX,ALMOV AL,NUM ;取相应的时间常数 XLATMOV DX,IO8253AOUT DX,AL ;向8253通道0输出相应延迟KKK: MOV DX,IO8255AIN AL,DX ;从8255A口读取数据信息TEST AL,01 ;判断PA0口是否为1,即8253是否计数完毕,输出OUT是否为高电平JZ KKK ;若不为1,则转KKKRET ;子程序返回DELAY ENDPCODE E

31、NDSEND START ;结束整个程序段6. 设计心得本次设计中,可以说是一次对自己能力与学习结果的考验。在我们学完了微型计算机原理及应用这门课的基础上来搞这个设计,通过设计后,使我们对这门课的理论知识的理解有很大程度上的加强。微机原理这门课程本身是一门实验性和工程性很强的专业技术课,因此不仅要重视理论教学,更应注意实践技能的培养和训练。课程设计是这门课程的一个重要环节,通过课程设计,巩固、加深和拓宽了学习的理解,使自己的分析、设计和调试8086微机系统的能力得到了进一步的提高。在设计过程中,对不同方案的构思、分析、比较到最后的定案,这些工作,培养我们的分析问题,解决问题和创新的能力。在方案

32、确定后,在软件编程方面,对编写的程序经上机实践和调试,对存在的问题进行反复修改,使其达到了最优方案。这样的编程机会在平时是很少有的,所以,在编程方面我们得到了很多的锻炼,使自己更加熟悉了汇编语言,了解了编程思想,为以后的学习以及工作打下了扎实的基础。在短短两周的课程设计,我认识到,课程设计能真正让人学到实际应用的东西的一门课程。收获比上几星期课还多。 首先,要实现题目要求的功能并有所创新,我们必须全心地投入其中,养成一种敢于钻研敢于创新的习惯。在把课程要求实现到实际中来的过程中,首先必须清楚明白地了解几个参考程序的每一行的意思,这就需要敢于静心钻研。为了把使得程序更加完整,就必须进行创新,这就

33、需要敢于创新。其次,通过课程设计,让我在课本的基础上,更深入的了解了各种芯片的用法和程序的完成过程,调试方法及技巧。为了了解键盘,查找了不少8279芯片的资料,了解了键盘的初始化,存取缓存,扫描键盘,读取键码以及键码和显示码之间的转换。为了实现基本功能,认真研究了参考程序的意义,了解了电子琴的不同音阶放音功能的实现,更深入了解了8253计时器的使用方法。 另外,在开发过程中要能达到如下的目的:打下较为坚实的硬件基础、对汇编语言比较熟悉、能够较为熟悉地解决一些典型的汇编程序设计问题。因此,我们所需要的游戏平台在开发时需要涉及如下模块:算术运算模块、非数值处理模块、发声模块、中断模块、输入输出模块

34、、系统时间显示模块、系统调用模块等,其中不同的模块对应于不同的汇编程序设计问题,学生将在平台实现过程中不断碰到相应的问题,通过“做”来解决问题,进而达到“学”的目的。通过本项目的设计与实现也将为后续课程的学习以及较为复杂的系统级产品的开发,如嵌入式系统等,打下良好的基础。 总之通过这次课程设计,我们对各个芯片有了进一步的了解,对各个芯片的功能有了更深刻的认识和体会,平时上课的理论知识只是停留在理论的层面,只有通过了这样的试验才能更好的体会到,做到了理论和实际的相结合,使理论知识真正运用到了实践中去。在课程设计过程中,同组人员之间相互合作,共同研究使我更加坚信了团体的力量。在团体的共同协作和努力

35、下,任何的难题都可以被解决! 在这次课程设计的过程中得到了指导老师李老师的热情帮助,还有许多同学都提出了宝贵的意见,在这里一并表示感谢! 参考文献【1】 微型计算机原理与接口技术 李长青、李泉溪主编 中国矿业大学出版社 2006【2】 电气控制与可编程控制器 陈立定、吴玉香、苏开才编广州:华南理工大学出版社2001【3】 IBM-PC汇编语言程序设计 沈美明 清华大学出版社 2001年8月第2版 【4】 IBM-PC汇编语言程序设计例题习题集沈美明 清华大学出版社 1991年6月第1版 【5】 微机系统和接口应用技术 朱世鸿 清华大学出版社 2006年9月第1版 【6】 微机原理与接口技术课程设计 宋世杰 机械工业出版社,2005【7】 汇编语言课程设计案例精编 李真香等北京:中国水利水电出版社,2004

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号