计算机硬件课程设计电子琴.doc_第1页
计算机硬件课程设计电子琴.doc_第2页
计算机硬件课程设计电子琴.doc_第3页
计算机硬件课程设计电子琴.doc_第4页
计算机硬件课程设计电子琴.doc_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机硬件技术基础课程设计电子琴 小组成员及分工: XXXXXXXX 目录目录2摘要21.设计目的与意义31.1设计目的31.2设计意义32.课程设计的任务和思路42.1设计任务42.2设计思路43. 硬件工作原理73.1 8255工作原理73.2 8254工作原理83.3 扬声器模块工作原理93.4三色LED数显103.5 4X4非编码键盘114. 功能说明124.1 总体功能说明124.1.1主程序说明124.2 弹奏功能说明134.2.1 音符选择144.2.2 音阶选择144.2.3 弹奏实现144.2.4 流程图144.3 回放功能154.4 歌曲播放功能174.5 显示功能185. 组员心得体会19心得体会1:19心得体会2:21心得体会3:23心得体会4:256操作说明书276.1 连线要求276.2使用电子琴弹奏乐曲以及使用各个子功能的方法287.整体程序清单29摘要通过大三上学期对计算机硬件技术课程的学习,我们初步掌握了一些计算机硬件工作的基本原理、汇编语言程序设计方法,建立了微型计算机系统的整体概念,初步形成微机系统软硬件开发的能力。为了更好的理解和掌握学习到的知识,也为了更深入的了解熟悉可编程定时器8254和8255,我们试图通过编程使8255识别输入键值,通过8254识别发声,达到通过按键控制扬声器发声频率的目的,从而模拟电子琴的工作原理。由于本电子琴设计简单,方便改装用于其他实用领域,如报警器、门铃、儿童玩具等,具有一定的实用价值。要完成一个简易的电子琴,要求我们利用相关已经学过的芯片连接成一个电子电路,并且通过自己用汇编语言编程,控制设计的电子电路实现电子琴的一些功能,比如通过高中低音键和音调键分别控制发出高低音的1、2、3、4、5、6、7音调,比如播放预先存储的歌曲,比如回放上一个弹奏的歌曲等。本文首先介绍了设计目的、意义、任务及思路,接着简单介绍了各个元器件的工作原理,然后以流程图的形式展现了各程序的基本思路,再介绍了一些具体功能是如何实现的,在附录中还附带了完整的程序,最后描述了组员的心得体会。1.设计目的与意义1.1设计目的计算机硬件技术课程设计是对所学课程内容的全面、系统的总结、巩固和提高的一项课程实践活动。课程设计要求同学们熟悉汇编语言的编程、连接、调试、运行等步骤,以及设计中所设计的相关软硬知识。通过课程设计,一方面提高运用汇编语言变成解决实际问题的能力,另一方面使同学们更深入的了解计算机系统内部的有关知识,为以后的学习和系统开发奠定良好的基础。1.2设计意义 通过课程设计要进一步锻炼在微型计算机应用方面的实际工作能力。计算机科学是一门应用型学科,学习时必须紧密联系实际,要强调实际问题的能力。通过设计学会面对一个实际问题时如何分析问题、收集资料并且如何将理论知识运用于实际生活中,解决实际问题。2.课程设计的任务和思路2.1设计任务设计一个电子琴,以扬声器作为发声装置,以4X4小键盘作为输入装置,模拟电子琴的琴键和功能按键,嗲子清具有低、中、高三个音阶,能弹奏曲目在计算机硬件试验系统基础上,完成扬声器模块的设计,完成基本功能,并在此基础上完善并优化系统功能。(1)按“17”中的任一数字键,则发出对应的中音;(2)若按下“高音键”和“17”中的任一数字键,则发出对应的高音;(3)若按下“低音键”和“17”中的任一数字键,则发出对应的低音;(4)弹奏时要求能够区分节拍、音调、音阶和休止符。2.2设计思路 电子琴的设计实际上就是要设计一个程序,通过识别按键,控制扬声器模块的振动频率,从而发出不同的音调。扬声器模块是通过并行接口芯片8255和定时芯片8254来控制发音的,其电路连接方式如下图所示。频率 8255A 1 PC8 CLK2 8254GATE2 OUT2 &扬声器模块 图1 扬声器控制电路扬声器是由8254通道2产生的方波信号驱动发声的。要想让扬声器发声,除了电源和接地外,还需要一个引脚给予振动频率才能正常工作。同时当8255的PC7置1,使得8254的GATE为高时。OUT2引脚上才能产生一定频率的方波信号驱动扬声器,使扬声器发声。因此,可以通过对8255的PC7的设置来控制扬声器的开通和关断,而其发音频率可以通过改变8254通道2的计数初值来控制。因此设计程序的任务就是要通过识别按键来设置8255的PC7输出电平的高低,以及设置8254通道2计数初值。在实际的课程设计中,因为计数初值的设置、8254的CLK频率的选择等原因,我们给予8254用于参与计算高低中音的程序频率和实际OUT2口输出的驱动频率有点不同,以下两表分别为OUT2口输出频率和程序中用于计算的频率:音符1234567频率(低)131147165175196220247频率(中)262294330349392440494频率(高)524588660698784880988表一:OUT2口输出的驱动频率音符1234567频率(低)101112125134151167186频率(中)202224250268302334372频率(高)402448500536604668744表二:程序中参与计算8254计数初值的频率3. 硬件工作原理3.1 8255工作原理 8255是Intel公司生产的可编程并行I/O接口芯片,有3个8位并行I/O口。具有3个通道3种工作方式的可编程并行接口芯片(40引脚)。 其各口功能可由软件选择,使用灵活,通用性强。8255可作为单片机与多种外设连接时的中间接口电路。8255作为主机与外设的连接芯片,必须提供与主机相连的3个总线接口,即数据线、地址线、控制线接口。 8255的内部结构图如图2所示,它有3个数据端口,分为两组,A组由A口和C口高四位组成,B组由B口和C口低四位组成。其方式控制字如图3所示。图2 8255内部结构图 图3 8255控制字3.2 8254工作原理 8254 芯片是一款使用十分广泛的可编程定时,计数芯片,其主要功能是定时和计数的功能。人们所使用的微机内的动态存储器刷新电路、系统日时钟的技术以及发声系统的声源都是由8254芯片来参与完成工作的。每个8254芯片有3个独立的16位计数器通道,每个计数器有6中工作方式,都可以按二进制或十进制(BCD码)计数。8254芯片主要由数据总线、缓冲器、读写逻辑控制字、寄存器、计数器四部分组成。其中当计数器工作在方式3时,输出信号为方波信号。 图4 8253内部结构图图5 8253控制字格式 8254的通道0,通道1,通道2,控制口的端口地址分别为:300H,304H,308H,30CH。因为扬声器是由通道2来控制的,故应选择通道2,工作方式选为方式3,输出的信号则为方波信号。3.3 扬声器模块工作原理 扬声器模块式有8254以方式3产生的方波信号驱动发声的。该发声驱动系统由8255的PC7口经控制8254的GATE电平高低控制定时计数开始与结束的。3.4三色LED数显 8255A并行模块中共有4片8255A芯片,每个8255A芯片的输出控制了两个共阳极8段LED,通过PCI总线接口与其相连,下面为电路图和端口地址,字型码和LED显示颜色选择表格 3.5 4X4非编码键盘 在拓展的实验板上有4行4列非编码键盘,按键的行、列信号用过插孔引出,行信号通过插孔P0-P3引出,列信号用过插孔Q0-Q3引出,4X4非编码键盘电路图如下图所示。4. 功能说明4.1总体功能说明 8254的A口与B口分别连接4X4键盘的行与列,从中读取键值,确定音符,17按键分别对应17音符。C口连接两个开关,读取选择的音阶,若K1K2=01则为高音,若K1K2=01则为低音,否则为中音。8255根据选择的音符与音阶根据音符频率表确定需要的发声频率Hz送给8254。8254的CLK频率为3MHz,由N=3MHz /Hz确定8254计数初值N。8254工作在方式3,通过OUT 口以方波形式将发声频率传给发声模块。发声模块通过不同的频率选择不同的音符与音阶发声。当不需要发声时,使8254的GATE为低电平。4.1.1主程序说明 程序开始运行后,首先读取开关状态,若没有键按下,则进入弹琴子程序,否则判断是回放还是放音键。若为回放键,则进入回放子程序,否则进入播放子程序。进入子程序后,判断是否结束或中断。若不是则重复运行子程序,否则重新读取开关。 主程序的流程图如下图所示:图6 主程序流程图4.2弹奏功能说明 首先根据音符音阶表建立音阶表LOW、MID、HIGH。根据K1K2选择高中低音,由LEA指向相应表。再根据8255读取按键值,若没有按键按下,则重新开始选择音阶读取键值,若有键按下则根据键值选择偏移地址放入SI中,从而准确判断选择发音频率,送往扬声器。再令GATE为高电平,开启扬声器发声。发声时不断扫描键盘和功能键,若有键盘键按下则重新根据相应的音符发声,若有功能键按下则关闭扬声器。4.2.1 音符选择扬声器发音的频率是由8254产生方波的频率决定的,而方波频率又是由通道的计数初值来决定的,因此可以通过改变通道的计数初值来实现变调功能。计数初值N=时钟频率/音阶频率,时钟频率为3MHZ,可以将相应音调对应的时钟频率存入内存单元,当选择相应的音调时,计算计数初值时,采用对应的时钟频率值,4.2.2 音阶选择 高中低音阶主要是三组频率不同的音符,因此可以通过建立三个音阶表LOW、MID、HIGH。根据开关情况确定由LEA指向相对应的表,再调用发声子程序,即可发出不同音阶的声音。4.2.3 弹奏实现已提前选择音阶,即已选择好该指向哪个音符表。由8255扫描按键值,根据扫描确定按得是哪个键,由此确定偏移地址并放入SI中,然后通过查表得其相应频率值,求得计数初值,然后将计数初值送入8254的通道2,最后调用发声子程序即实现弹奏功能。4.2.4 流程图弹奏功能流程图如下: 图7 弹奏功能流程图4.3回放功能 回放功能的实现与歌曲播放功能的实现原理相近,不同的是用来存放声音所键的表里并不会预先存储歌曲,而是每按下一个音符键时就将对应的频率存放到该表里。当弹奏结束后开通K2时,与歌曲播放功能一样取出频率与节拍计数值,调用发声子程序,即可演奏刚刚弹奏的歌曲。当K4为1时,调用回放子程序,回放子程序的流程图如下图所示:图8 音乐播放子程序流程图 首先选择的固定的节拍,再将相应频率调入SI中,在调用发音程序发现,并判断是否结束,若不结束,则重新调入频率,重新发音。4.4 歌曲播放功能 预先存储欢乐颂歌曲,建立了两个表,一个存放歌曲对应的频率,一个存放节拍。程序从频率表中依次取出音符对应的频率送给SI寄存器,同时取出对应的节拍计数值送给BX寄存器,在调用发声子程序,即可演奏出歌曲。当频率为0时结束程序。 当K3为打开时启动播放功能,可以播放预先存储的歌曲,其流程图如下: 图9 歌曲播放子程序流程图 根据选择的歌曲将音符、音阶对应的频率调入SI中,对应节拍放入BP中,在调用发音子程序,根据SI与BP发出对应的声音,每发出一个声音判断歌曲是否结束,若还未结束则选择下一个音符、音阶、节拍调入,若结束则关闭扬声器,结束放音。 4.5 显示功能显示功能调用了控制三色led的第一片8255,其地址片选为200H,当每一个音符被按下的时候,我们调用8255控制着两个三色led给出相应的显示。为弹奏的子功能时,第一片三色led用A来显示,低音显示绿色、中音显示黄色、高音显示红色,第二片用来显示被按下的对应的音符;为放音子程序时显示B,第二片显示相应的音符;当为回放子程序的时候两片合起来显示C0。其程序流程图对应如下:图10 显示子程序流程图5. 组员心得体会重庆大学自动化学院计算机硬件课程设计电子琴耗时两周,很坑,正好占据考研时间,真TM贱 本实验相当成功,按键灵敏,音乐准确程序由大神亲自编写唐丹老师相当好,既可爱又漂亮要求也不严要是答辩碰上黄勤,等着死吧 欢迎学妹垂询!QQ 2725714501 祝学长考研成功! 6操作说明书6.1 连线要求 端口地址连接:第五片8255A片选与320H相连;8254片选与300H相连 。8255与输入设备:第5片8255A的PA0-PA3与键盘行信号P0-P3连接;第5片8255A的PB0-PB3与键盘列信号Q0-Q3连接; 第5片8255A的PC0-PC3与开关K1-K4连接。8254连接: GATE2与PC7口连接;CLK2与3MHz 相连;OUT2与扬声器输入口相连。扬声器:正电源与实验板的+5V相连接;接地端与实验板的GND连接。连线后设备全貌:6.2使用电子琴弹奏乐曲以及使用各个子功能的方法弹奏功能:全速运行之后,当K2K1为10时(扳上为1,扳下为0),按下键盘的1-7按钮则会对应发出低音部的键盘1-7的声音;当K2K1为01是,按下键盘的1-7按钮则会对应发出高音音部的键盘1-7的声音;当K2K1为非以上情况时,按下键盘的1-7按钮则会对应发出中音部的键盘1-7的声音。并且其实实验板上排的三色LED会显示为A模式,且弹奏的音符对应的简谱符号也会现实,而且根据其所属音节的不同,为不同的颜色;其中红色为高音,黄色是中音,绿色为低音。乐曲欢乐颂播放示范:当将K3开关板上时,则会自动循环播放歌曲,且三色LED首位会现实为B,扳下则停止播放,并恢复到弹奏功能模块工作方式。弹奏回放功能:在弹奏不超过100个音符的时候,可以回放所弹音符,但是注意是没有记录节拍信息的。7.整体程序清单.486PORTA EQU 320HPORTB EQU 324HPORTC EQU 328HCTRL EQU 32CHPORTA4 EQU 300HPORTB4 EQU 304HPORTC4 EQU 308HCTRL4 EQU 30CHCODE SEGMENT USE16ASSUME CS:CODEORG 1000H BEG:JMP STARTHFDINGWEI DW ?HFQISHI DW ?HFZHONGZHI DW ?HFBIAOZHI DW ?GONGNENG DB ?YINFU DB ?PINLV DW ?PANDUAN DB ?SHANGYIN DB ?SHANGGONG DB ?DENGZHI DW ?LOWD DW 101,112,125,134,151,167,186 ;3MHZ时钟信号MID DW 202,224,250,268,302,334,372HIG DW 402,448,500,536,604,668,744HUANLE DW 250,250,268,302,302,268,250,224 DW 202,202,224,250,250,224,224 DW 250,250,268,302,302,268,250,224 DW 202,202,224,250,224,202,202,0JIEPAI DW 8 DUP(25) DW 4 DUP(25),50,2 DUP(25) DW 8 DUP(25) DW 4 DUP(25),50,2 DUP(25)HUIFANG DW 1 DUP(50H)JIEPAI2 DW 8 DUP(50H)START:KSCAN1 PROC NEAR;主程序,用于扫描功能,并且调用相关的程序PUSH CX ;从这开始就是初始化的一些东西,包括8255的初始化、回放、三色LED的初始化MOV DX,CTRLMOV AL,91HOUT DX,ALMOV CX,20H;回访的初始化LEA SI,HUIFANGCHUZHI:MOV AX,0000HMOV WORD PTRSI,AXINC SIINC SILOOP CHUZHILEA SI,HUIFANGMOV HFBIAOZHI,0000HMOV HFDINGWEI,SIMOV HFQISHI,SIMOV SI,HFQISHI;做出回放地址的起始点MOV AX,HFQISHI;做出回放地址的终止点ADD AX,100HMOV HFZHONGZHI,AXCHUDENG :;三色led的初始化MOV DX,20CHMOV EAX,80808080HOUT DX,EAXMOV DX,200HMOV AL,88HOUT DX,ALMOV DX,204HMOV AL,0C0HOUT DX,ALMOV DX,208HMOV EAX,0F0F0F05HOUT DX,EAXRECEIVE:;形成功能代号,便于下面选择功能MOV DX,PORTCIN AL,DXAND AL,0FHCMP AL,0FHCALL FNDKEY1MOV CL,GONGNENGMOV SHANGGONG,CLCMP GONGNENG,01HJZ RELOP1 CMP GONGNENG,02HJZ RELOP1 CMP GONGNENG,03HJZ RELOP1 CMP GONGNENG,04HJZ RELOP2 CMP GONGNENG,08H JZ RELOP3RELOP1:CALL GONGDENGCALL TANQINJMP RECEIVERELOP2:CALL GONGDENGCALL GEQUJMP RECEIVERELOP3:CALL GONGDENGCALL HUIFJMP RECEIVE ;处理完毕之后,返回继续读取功能选择POP CXRET KSCAN1 ENDP KSCAN2 PROC NEAR;寻找对应的1-7音符的按键是否按下的子程序,把得到的音符值传给YINFUMOV CX,02HMOV BL,0FDH;从Q1列开始扫描LOP3:MOV AL,BLMOV DX,PORTBOUT DX,ALMOV DX,PORTAIN AL,DXAND AL,0FHCMP AL,0FHJZ LOP4CALL FNDKEY2JMP LOP5LOP4:ROR BL,1LOOP LOP3MOV YINFU,00H;如果没有音符键按下则置YINFU为00HLOP5: RET KSCAN2 ENDPFNDKEY1 PROC NEAR;形成功能键的键值音CMP AL,00HJZ FK1LOP3CMP AL,01HJZ FK1LOP1CMP AL,02HJZ FK1LOP2CMP AL,03HJZ FK1LOP3CMP AL,04HJZ FK1LOP4CMP AL,08HJZ FK1LOP5MOV GONGNENG,00HJMP OVERFK1LOP1:MOV GONGNENG,01HJMP OVERFK1LOP2:MOV GONGNENG,02HJMP OVERFK1LOP3:MOV GONGNENG,03HJMP OVERFK1LOP4:MOV GONGNENG,04HJMP OVERFK1LOP5: MOV GONGNENG,08HJMP OVEROVER: RETFNDKEY1 ENDPFNDKEY2 PROC NAER;形成音符键的键值SHL BL,4OR AL,BLSHR BL,4MOV YINFU,ALRETFNDKEY2 ENDPSEARCH_FZ PROC NEAR CMP YINFU,0EDH JZ JIAN1 CMP YINFU,0EBH JZ JIAN2 CMP YINFU,0E7H JZ JIAN3 CMP YINFU,0DEH JZ JIAN4 CMP YINFU,0DDH JZ JIAN5 CMP YINFU,0DBH JZ JIAN6 CMP YINFU,0D7H JZ JIAN7 JIAN1: MOV YINFU,01H JMP DIANYAJIAN2: MOV YINFU,02H JMP DIANYAJIAN3: MOV YINFU,03H JMP DIANYAJIAN4: MOV YINFU,04H JMP DIANYAJIAN5: MOV YINFU,05H JMP DIANYAJIAN6: MOV YINFU,06H JMP DIANYAJIAN7: MOV YINFU,07H JMP DIANYADIANYA:MOV AL,YINFUMOV AH,00HMOV DENGZHI,AXCMP GONGNENG,01HJNZ LOPQLEA SI,HIGJMP CHAOBIAOLOPQ:CMP GONGNENG,02HJNZ LOP12LEA SI,LOWDJMP CHAOBIAOLOP12:LEA SI,MIDCHAOBIAO:CALL YINDENGMOV AL,YINFUMOV AH,00HSHL AX,1SUB AX,2ADD SI,AXMOV DI,WORD PTRSICALL HFGENGXINRETSEARCH_FZ ENDPFASHENGPROC NEAR;发出设定好的声音PUSH AXPUSH BXPUSH CXPUSH DXPUSH DIMOV AL,0B6HMOV DX,CTRL4OUT DX,ALMOV DX,12HMOV AX,34DCHDIV DIMOV DX,PORTC4OUT DX,ALMOV AL,AHOUT DX,AL;扬声器送初值MOV DX,PORTCMOV AL,10000000BOUT DX,ALWAIT1: MOV PANDUAN,00HMOV CX,02HMOV BL,0FDH;从Q1列开始扫描LOP11:MOV AL,BLMOV DX,PORTBOUT DX,ALMOV DX,PORTAIN AL,DXAND AL,0FHCMP AL,0FHJZ PANCALL FNDKEY2MOV AL,YINFUCMP AL,0EDH JZ BIAOZHUN CMP AL,0EBH JZ BIAOZHUN CMP AL,0E7H JZ BIAOZHUN CMP AL,0DEH JZ BIAOZHUN CMP AL,0DDH JZ BIAOZHUN CMP AL,0DBH JZ BIAOZHUN CMP AL,0D7H JZ BIAOZHUN CMP AL,0FDH JZ BIAOZHUN CMP AL,0FBH JZ BIAOZHUN CMP AL,0F7H JZ BIAOZHUN CMP AL,0FEH JZ BIAOZHUN JMP LOP11 BIAOZHUN:CMP AL,SHANGYINJNZ PANMOV PANDUAN,01HPAN: MOV BL,0FEHLOOP LOP11CMP PANDUAN,00HJZ CLOSEMOV DX,PORTCIN AL,DXAND AL,0FHCMP AL,0FHCALL FNDKEY1MOV AL,GONGNENGCMP AL,SHANGGONGJNZ CLOSEJMP WAIT1CLOSE:MOV DX,PORTCMOV AL,00000000BOUT DX,ALPOP DIPOP DXPOP CXPOP BXPOP AXRETFASHENG ENDPTANQIN PROC NEARCALL KSCAN2;走到这一步就检测是否有音符键被按下,有则设定相应的音符号MOV AL,YINFUMOV SHANGYIN,ALCMP YINFU,00HMOV DENGZHI,00HJZ TQOVER1;没有音符值被按下则重新接收,不发声CALL SEARCH_FZ ;寻找相应的发声频率CALL FASHENG;发出设定好的声音TQOVER1:MOV DX,204HMOV AL,0C0HOUT DX,ALRETTANQIN ENDPGEQU PROC NEAR;歌曲子程序 LEA SI,HUANLELEA BP,JIEPAIMUSIC: MOV DX,PORTC;判断是否放音键被关闭IN AL,DXAND AL,00000100BCMP AL,00000100BJNZ END_MUSICMOV DI,SIMOV BX,BPCMP DI,0000HJZ END_MUSICCALL FASHENG3ADD SI,2ADD BP,2JMP MUSICEND_MUSIC:CALL DLYLRETGEQU ENDPFASHENG2 PROC NEAR ;发声子程序,给予相应的频率和节拍之后发声PUSH AXPUSH BXPUSH CXPUSH DXPUSH DIMOV AL,0B6HMOV DX,CTRL4OUT DX,ALMOV DX,12HMOV AX,34DCHDIV DIMOV DX,PORTC4OUT DX,ALMOV AL,AHOUT DX,ALMOV DX,PORTCMOV AL,10000000BOUT DX,ALDELAY1: MOV CX,05FFHDELAY2: LOOP DELAY2DEC BXJNZ DELAY1MOV DX,PORTCMOV AL,00000000BOUT DX,ALPOP DIPOP DXPOP CXPOP BXPOP AXRETFASHENG2 ENDPFASHENG3 PROC NEAR ;发声子程序,给予相应的频率和节拍之后发声PUSH AXPUSH BXPUSH CXPUSH DXPUSH DIMOV AL,0B6HMOV DX,CTRL4OUT DX,ALMOV DX,12HMOV AX,34DCHDIV DIMOV DX,PORTC4OUT DX,ALMOV AL,AHOUT DX,ALMOV DX,PORTCMOV AL,10000000BOUT DX,ALDELAY3: MOV CX,01FFFHDELAY4: LOOP DELAY4DEC BXJNZ DELAY3MOV DX,PORTCMOV AL,00000000BOUT DX,ALPOP DIPOP DXPOP CXPOP BXPOP AXRETFASHENG3 ENDPHUIF PROC NEARCMP HFBIAOZHI,0000HJZ QSLOP1LEA SI,HFDINGWEILEA BP,JIEPAI2JMP MUSIC2QSLOP1:LEA SI,HUIFANGLEA BP,JIEPAI2MUSIC2: MOV DX,PORTC;判断是否放音键被关闭IN AL,DXAND AL,00001000BCMP AL,00001000BJNZ END_MUSIC2MOV DI,WORD PTRSICMP DI,0000HJZ END_MUSICCALL FASHENG2ADD SI,2MOV AX,HFZHONGZHICMP SI,AXJZ FUYUANADD BP,2JMP MUSIC2FUYUAN: MOV SI,HFQISHILEA BP,JIEPAI2CALL MUSIC2END_MUSIC2:RETHUIF ENDPHFGENGXIN PROC NEARMOV AX,DIMOV SI,HFDINGWEICMP SI,HFZHONGZHIJNZ JIXUMOV SI,HFQISHIMOV HFBIAOZHI,0001HJIXU:MOV SI,AXINC SIINC SIMOV HFDINGWEI,SIRETHFGENGXIN ENDPDLYL PROC NEARPUSH ECXMOV ECX,04FFFFHDLYL_AGN:NOPLOOP DLYL_AGNPOP ECXRETDLYL ENDPGONGDENG PROC NEARCMP GONGNENG,01HJZ GDLOP1CMP GONGNENG,02HJZ GDLOP2CMP GONGNENG,03HJZ GDLOP3CMP GONGNENG,04HJZ GDLOP4

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论