版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、PC微機(jī)原理與接口技術(shù) 實(shí)驗(yàn)報告admin200800120100實(shí)驗(yàn)一 上機(jī)練習(xí)實(shí)驗(yàn)?zāi)康模?、掌握用編輯軟件編輯程序文本的方法。在DOS環(huán)境下,熟練掌握用MASM5.0宏匯編程序?qū)SM文件進(jìn)行編譯、連接等操作步驟。2、熟悉用DEBUG調(diào)試程序。實(shí)驗(yàn)要求:選取教科書中一典型例題,用編輯軟件在PC機(jī)中形成ASM文件,然后編譯、連接,生成目標(biāo)文件和可執(zhí)行文件。再用DEBUG程序進(jìn)行調(diào)試。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:23 / 24data segmentary1 db 12,34,45,56,67,78,89,90,18cont1 equ $-ary1 ;ary1的長度sum1 dw ?ary2 db
2、 13h,24h,57h,68h,9ah,0bch,0cdh,0deh,80h,50hcont2 equ $-ary2sum2 dw ?data endscode segment assume cs:code, ds:datastart: mov ax,data mov ds,ax lea si,ary1 mov cx,cont1 ;設(shè)定循環(huán)次數(shù)為ary1的個數(shù) call sum lea si,ary2 mov cx,cont2 call sum mov ah,4ch ;結(jié)束程序功能調(diào)用4CH int 21hsum proc ;求和程序段,求該段所有數(shù)之和 xor ax,ax ;ax清零為下面
3、加法準(zhǔn)備next1: add al,si adc ah,0 inc si loop next1 mov si,ax ret ;返回調(diào)用程序sum endp ;程序段結(jié)束code ends end start點(diǎn)擊“運(yùn)行”點(diǎn)擊“編譯成目標(biāo)文件”,編譯成功后,再“運(yùn)行”=“生成可執(zhí)行文件”,然后運(yùn)行,即可。運(yùn)行成功以后,可進(jìn)行調(diào)試。點(diǎn)擊工具欄的調(diào)試按鈕,出現(xiàn)調(diào)試框。其命令如下:輸入a,進(jìn)行逐行匯編,輸入c, 比較兩內(nèi)存塊,輸入d,內(nèi)存信息以16進(jìn)制顯示;輸入e,修改內(nèi)存指定的字節(jié);輸入f,可以預(yù)置一段內(nèi)存; 輸入g,執(zhí)行程序;輸入h,制算術(shù)運(yùn)算;輸入i,從指定端口地址輸入;輸入l,讀盤;輸入m,內(nèi)存
4、塊傳送;輸入n,置文件名;輸入o,從指定端口地址輸出;輸入q,結(jié)束DEBUG調(diào)試;輸入r,顯示和修改寄存器;輸入s,查找字節(jié)串;輸入t,跟蹤執(zhí)行;輸入u,反匯編;輸入w,存盤操作。實(shí)驗(yàn)總結(jié):1、 通過實(shí)驗(yàn),熟悉了MASM環(huán)境,了解了程序書寫,編譯和運(yùn)行的方法。2、 實(shí)驗(yàn)過程中,在調(diào)試的時候,各調(diào)試命令的用法十分復(fù)雜,如指令P,單輸入p只會執(zhí)行一步,若要一次執(zhí)行多步,可以在后面加上數(shù)字。通過練習(xí),熟悉了各調(diào)試指令。實(shí)驗(yàn)二 兩個多位十進(jìn)制數(shù)相加實(shí)驗(yàn)?zāi)康模?、學(xué)習(xí)數(shù)據(jù)傳送和算術(shù)運(yùn)算指令的用法。2、熟悉在PC機(jī)上建立、匯編、連接、調(diào)試和運(yùn)行匯編語言程序過程。實(shí)驗(yàn)要求:將兩個多位十進(jìn)制數(shù)(如四位)相加,
5、要求被加數(shù)、加數(shù)以ASCII碼形式按順序存放在以DATA1和DATA2為首的5個內(nèi)存單元中(低位在前)。結(jié)果顯示在屏幕上。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DATAS SEGMENTnum1 db '3','2','4','5','0' ;被加數(shù)num2 db '2','6','7','1','0' ;加數(shù)s db '5423+1762=$' ;顯示的公式形式,$表示輸出結(jié)束DATAS ENDSCODES SEGMENT ASSU
6、ME CS:CODES,DS:DATAS,ES:DATASSTART: MOV AX,DATAS MOV DS,AX ;DS指向數(shù)據(jù)段 mov ES,AX ;ES指向數(shù)據(jù)段 mov cx,5 ;5次循環(huán) lea dx,s ;要顯示的字符串的首偏移地址 mov ah,9h ;9號DOS功能調(diào)用顯示字符串s int 21h mov si,offset num1 ; si指向num1首地址 mov di,offset num2 ; di指向num2首地址 clc ;清零進(jìn)位寄存器CFadds: LODSB adc al, di ;有符號加法 aaa ;調(diào)整ASCII碼加法結(jié)果指令 stosb ;所得
7、結(jié)果以字節(jié)為單位存儲到數(shù)據(jù)段di指向的位置,di+1 loop adds ;循環(huán)知道cx為零,cx-1 mov ah,02h ;以下為輸出加法結(jié)果 mov cx,5;共有5位數(shù)循環(huán)5次adjust:mov dl,di-1 or dl,30h ;二進(jìn)制數(shù)轉(zhuǎn)換成其相應(yīng)ASCII碼 dec di ;輸出下一位 int 21h loop adjust MOV AH,4CH INT 21H ;21號功能調(diào)用程序退出CODES ENDS END START輸入程序編譯成功以后,顯示如下圖:實(shí)驗(yàn)總結(jié):1、 通過實(shí)驗(yàn),學(xué)會了使用匯編語言實(shí)現(xiàn)多位十進(jìn)制數(shù)的相加運(yùn)算。2、 實(shí)驗(yàn)中應(yīng)注意,在聲明data的部分?jǐn)?shù)字的
8、順序和實(shí)際中數(shù)字的順序是相反的,因?yàn)榇鎯ζ魇菑牡臀坏礁呶淮鎯Φ摹?、 要為DATAS段指定兩個段寄存器DS和ES分別存放加數(shù)和被加數(shù),同時相加結(jié)果也存放在ES段中。4、 了解LODSB的用法,每次循環(huán)后SI都會自動加一,與此類似的STOSB使用時,寄存器DI指向的地址也會自動后移一位。5、 通過實(shí)驗(yàn),我還了解了ASCII碼到BCD碼運(yùn)算的轉(zhuǎn)變,以及運(yùn)算結(jié)果的BCD碼通過調(diào)整轉(zhuǎn)變成ASCII碼存儲和顯示。實(shí)驗(yàn)三 兩個數(shù)相乘實(shí)驗(yàn)?zāi)康模赫莆粘朔ㄖ噶畹挠梅▽?shí)驗(yàn)要求:實(shí)現(xiàn)一個多位十進(jìn)制數(shù)和一個一位十進(jìn)制數(shù)的乘法,被乘數(shù)和乘數(shù)均以ASCII碼形式存放在內(nèi)存中,結(jié)果顯示在屏幕上實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DAT
9、A SEGMENT A DB '5','7','4','1','3' ;被乘數(shù) B DB '7' ;乘數(shù) M DB 6 DUP(0) ;6位字節(jié)型存儲單元 S DB ' 31475*7=$' ; 輸出的公式DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATASTART:MOV AX,DATA MOV DS,AX MOV ES,AX CLD ;將方向標(biāo)志寄存器DF清零,指令LODSB和STOSB中 di,si做自增1的處理 MOV S
10、I,OFFSET A ;A為源操作數(shù) MOV DI,OFFSET M ;B為目的操作數(shù) MOV CX,5 AND B,0FH ;將ASCII碼數(shù)據(jù)轉(zhuǎn)換成二進(jìn)制形式 MOV BYTE PTRDI,0 L1: mov al,si ;乘數(shù)與被乘數(shù)相乘 LODSB AND AL,0FH MUL B AAM ADD AL,DI AAA mov di, al inc di STOSB MOV DI,AH ; 結(jié)果的存儲 inc si LOOP L1 MOV DX,OFFSET S MOV AH,9 INT 21H MOV CX,6 L2: MOV DL,DI ADD DL,30H MOV AH,02H I
11、NT 21H ;顯示所得數(shù)據(jù) DEC DI LOOP L2 MOV AX,4CH INT 21HCODE ENDS END START實(shí)驗(yàn)結(jié)果如下圖所示:實(shí)驗(yàn)總結(jié):1、 通過實(shí)驗(yàn)學(xué)會了,使用匯編語言完成相乘運(yùn)算。2、 試驗(yàn)中通過設(shè)定CX的值控制循環(huán)的次數(shù)。3、 在LODSB和STOSB指令中,SI和DI會每次自動增加1。4、 在A串中,由于數(shù)據(jù)是按從低地址到高地址的順序存放的,所以A DB '5','7','4','1','3'其實(shí)表示的是31475 。5、 程序的L2 循環(huán)使得所存二進(jìn)制數(shù)據(jù)轉(zhuǎn)換成相對應(yīng)的ASCI
12、I碼,并通過DOS 功能調(diào)用輸出。實(shí)驗(yàn)四 字符匹配程序?qū)嶒?yàn)?zāi)康模赫莆沾僮髦噶畹挠梅?。?shí)驗(yàn)要求:用串操作指令設(shè)計(jì)程序。實(shí)現(xiàn)在指定存儲區(qū)(長度:100H)中尋找匹配字符,遇空格字符(20H)結(jié)束,顯示查找結(jié)果。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DATA SEGMENT TISHI_1 DB 0dH,0AH,'Please input a character to search: $' TISHI_2 DB 0DH,0AH,'The string to be searched is:' STRING DB 10 DUP('A'),20H,15 DUP('
13、;B'),'$' COUNT EQU $-STRING S0 DB 0DH,0AH,' FOUND! $' S1 DB 0DH,0AH,'NOT FOUND! $' CHAR DB ?DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA,ES:DATA GO: MOV AX,DATA MOV DS,AX MOV ES,AX mov dx, offset TISHI_1 ;顯示字符串 mov ah,09 int 21H ; mov ah,1 ;從鍵盤輸入數(shù)據(jù) int 21H mov CHAR, al ;輸
14、入數(shù)據(jù)保存 ; MOV DI,OFFSET STRING MOV CX,COUNT CLD ;自增 MOV AL,CHAR REPNE SCASB ;字符串字節(jié)查找直到相等 JZ FOUND ;ZF=0時跳到FOUND指令 MOV DX,OFFSET S1 JMP DSPLYFOUND: MOV DX,OFFSET S0 ;找到DSPLY: MOV AH,09H ;顯示 INT 21H mov dx,offset TISHI_2 mov ah,09 int 21H ; MOV AH,4CH INT 21HCODE ENDS END GO實(shí)驗(yàn)總結(jié):1、 程序中用到了三個DOS功能調(diào)用,分別是9號
15、調(diào)用顯示字符串,1號調(diào)用從鍵盤輸入字符和4CH調(diào)用終止程序。9號使用DX指向字符串首地址,1號結(jié)果存在AL中。通過實(shí)驗(yàn),對DOS功能調(diào)有了更加深刻的認(rèn)識。2、 在對字符串的查找過程中,使用了SCASB指令,并且前面有REPNZ。該指令表示在一直查找直到ZF=0,即找到與AL寄存器相等的值為止。這個指令稍微有些復(fù)雜,再加上前綴的變化,使其可以滿足不同的查找需要。3、 程序中出現(xiàn)了JMP指令。單獨(dú)的JMP指令為無條件轉(zhuǎn)移,不過JMP還常常與標(biāo)志寄存器一起使用,使其功能更強(qiáng)大。如題目中的指令表示ZF=1即相等時轉(zhuǎn)移。實(shí)驗(yàn)五 字符串匹配程序?qū)嶒?yàn)?zāi)康模赫莆仗崾拘畔⒌氖褂梅椒版I盤輸入信息的用法。實(shí)驗(yàn)要求
16、:編寫程序,實(shí)現(xiàn)兩個字符串比較。若相同,則顯示MATCH,否則顯示NO MATCH。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DATA SEGMENT STRING1 DB 'ABCDEFG$' COUNT1 EQU $-STRING1 STRING2 DB 'ABCDEDG$' COUNT2 EQU $-STRING2 S0 DB ' MATCH$' S1 DB ' NOT MATCH$' SHIFT DB 0DH,0AH,'$' ;回車換行DATA ENDS;CODE SEGMENT ASSUME CS:CODE,DS:DATA
17、,ES:DATA GO: MOV AX,DATA MOV DS,AX MOV ES,AX MOV DX,OFFSET STRING1 ;顯示字符串1 MOV AH,09H INT 21H MOV DX,OFFSET SHIFT ;回車換行 INT 21H MOV DX,OFFSET STRING2 ;顯示字符串2 INT 21H MOV DX,OFFSET SHIFT INT 21H MOV AL,COUNT1 ;首先比較字符串長度是否相等 MOV AH,COUNT2 CMP AH,AL JNZ NMATCH MOV DI,OFFSET STRING1 ;長度相等比較內(nèi)容 MOV SI,OFF
18、SET STRING2 MOV CX,COUNT1 CLD ;自增 REPE CMPSB ; 一直比較直到不相等 JZ MATCH ;ZF=0相等則跳轉(zhuǎn)NMATCH:MOV DX,OFFSET S1 ;NO MATCH JMP DSPLY MATCH: MOV DX,OFFSET S0 ;MATCHDSPLY: MOV AH,09H INT 21H MOV AH,4CH ;終止程序 INT 21HCODE ENDS END GO實(shí)驗(yàn)總結(jié):1、 本實(shí)驗(yàn)與上一個實(shí)驗(yàn)內(nèi)容類似,不過不同之處在于直接比較兩個已存在的字符串內(nèi)容是否相等。2、 程序設(shè)計(jì)中,為比較字符串是否相同,先對其長度比較,若長度不同則
19、可以確定它們一定不相同。3、 對字符串內(nèi)容比較時,使用了CMPSB指令對字符串的每個字節(jié)進(jìn)行比較??梢钥闯?,CMPSB指令需要用SI和DI分別指向兩個字符串的首地址,并且有DF控制方向,同時比較結(jié)果影響標(biāo)志位ZF。4、 指令中實(shí)驗(yàn)的JMP和REPE指令也都是重點(diǎn)。實(shí)驗(yàn)六 從鍵盤輸入數(shù)據(jù)并顯示實(shí)驗(yàn)?zāi)康模赫莆战邮真I盤數(shù)據(jù)的方法,并了解將鍵盤數(shù)據(jù)顯示時須轉(zhuǎn)換為ASCII碼的原理。實(shí)驗(yàn)要求:編寫程序,將鍵盤接收到的四位十六進(jìn)制數(shù)轉(zhuǎn)換為等值的二進(jìn)制數(shù),并顯示在屏幕上。若輸入的不是0F間的數(shù)字,則顯示出錯信息,并要求重新輸入。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:CRLF MACRO ;回車換行 MOV AH,2 MO
20、V DL,0DH INT 21H MOV AH,2 MOV DL,0AH INT 21H ENDM DATA SEGMENT S0 DB 4 DUP (?) S1 DB 'Please input Hex numbers: $' S2 DB 'The corresponding bin numbers: $' S3 DB 'Input error! Please input again.$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX CRLF ;
21、回車換行 LEA DX,S1 ;顯示字符串S1 MOV AH,09H INT 21H CRLF LEA SI,S0 LLL: MOV CX,4 ;循環(huán)4次 KKK: MOV AH,1 ;從鍵盤輸入 INT 21H MOV SI,AL CMP AL,30H JB ERROR ;輸入比0小則跳到ERROR指令 CMP AL,39H JA ERROR1 ;輸入比9大則跳到ERROR1繼續(xù)判斷 JMP END1ERROR1: CMP AL,40H ;'A'看空間 JB ERROR ;比A小 CMP AL,46H ;'F' JA ERROR ; 比F大 JMP END1;
22、ERROR: CRLF LEA DX,S3 MOV AH,09H INT 21H ; 輸入字符串S3 CRLF JMP LLL END1: INC SI ;控制16進(jìn)制數(shù)的輸入 LOOP KKK CRLF LEA DX,S2 MOV AH,09H INT 21H CRLF MOV CX,4 MOV SI,OFFSET S0 MMM: MOV AL,BYTE PTRSI CMP AL,3AH JB END2 ; SUB AL,07H END2: SUB AL,30H mov bl, al PUSH CX MOV cl,4 shl bl,cl mov cx,04h NNN: rol bl,1 ;1
23、6進(jìn)制轉(zhuǎn)換成2進(jìn)制數(shù) MOV DL,bl AND DL,01h ADD DL,30H MOV AH,2 INT 21H LOOP NNN POP CX CRLF INC SI LOOP MMM MOV AX,4CH INT 21H CODE ENDS END START實(shí)驗(yàn)總結(jié):1、 本實(shí)驗(yàn)程序可以分為兩個部分。第一部分是對輸入數(shù)據(jù)的判斷,第二部分是將輸入的有效數(shù)據(jù)轉(zhuǎn)換成其二進(jìn)制形式并輸出。再判斷時,09或是AF分開判斷,并且由于程序原因af不可以被識別,也會被當(dāng)做無效數(shù)據(jù)要求重新輸入。第二部分將16進(jìn)制數(shù)轉(zhuǎn)換成二進(jìn)制數(shù)。2、 實(shí)驗(yàn)程序中出現(xiàn)了CMP指令,并結(jié)合JMP指令的JB和JA。當(dāng)目的操
24、作數(shù)比源操作數(shù)大時,JA指令發(fā)生跳轉(zhuǎn),小時則JB跳轉(zhuǎn)。實(shí)驗(yàn)七 字符和數(shù)據(jù)的顯示程序?qū)嶒?yàn)?zāi)康模赫莆兆址蛿?shù)據(jù)的顯示方法實(shí)驗(yàn)要求:顯示信息“輸入字符串,回車或空格結(jié)束”,回車或空格后顯示輸入字符串總字節(jié)數(shù),數(shù)字字符(1-9)及非數(shù)字字符數(shù)。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DSEG SEGMENTAA DB 'INPUT STRING,THE END FLAG IS $'EE DB 0DH,0AH,'$'BB DB 100,?,100 DUP('$')CC DB 0DH,0AH,?,?,'$'DSEG ENDSSSEG SEGMENT STAC
25、K DB 234 DUP(0) SSEG ENDS CSEG SEGMENT ASSUME CS:CSEG,SS:SSEG,DS:DSEGBEGIN: MOV AX,DSEG MOV DS,AX MOV BL,0 MOV DX,OFFSET AA MOV AH,09H INT 21H LEA DX,BB MOV AH,0AH INT 21H MOV SI,0 MOV CH,0 MOV CL,BB+1 L1: MOV AL,BBSI+2 CMP AL,39H JA NEXT CMP AL,30H JB NEXT INC BLNEXT: INC SI LOOP L1 LEA DX,EE MOV A
26、H,09H INT 21H LEA DX,BB+2 MOV AH,09H INT 21H MOV BH,BL MOV CL,4 SHR BH,CL CMP BH,10 JB L2 ADD BH,07L2: ADD BH,30H MOV CC+2,BH AND BL,0FH CMP BL,10 JB L3 ADD BL,07L3: ADD BL,30H MOV CC+3,BL LEA DX,CC MOV AH,09H INT 21H MOV AH,4CH INT 21H CSEG ENDS END BEGIN實(shí)驗(yàn)八 排序?qū)嶒?yàn)實(shí)驗(yàn)?zāi)康模赫莆沼脜R編語言編寫氣泡排序程序的思路和方法。實(shí)驗(yàn)要求:從首地址
27、為1000H內(nèi)存區(qū)開始存放50個數(shù),設(shè)計(jì)程序?qū)⑦@些數(shù)由小到大排序,排序后的數(shù),仍放在原區(qū)域中。實(shí)驗(yàn)步驟:實(shí)驗(yàn)程序如下:DATAS SEGMENT DATA DB 50,?,50 DUP(?) MESSAGE1 DB 'Please input numbers:$' MESSAGE2 DB 'Result:$' MESSAGE3 DB 13,10,'$'DATAS ENDSSTACKS SEGMENT STACK1 DB 200 DUP(?)STACKS ENDS CODES SEGMENT ASSUME CS:CODES,DS:DATAS,SS:
28、STACKSSTART: MOV AX,DATAS MOV DS,AX MOV AX,STACKS MOV SS,AX LEA DX,MESSAGE1;輸入提示語 MOV AH,09H INT 21H MOV AH,0AH LEA DX,DATA INT 21H LEA DX,MESSAGE3;回車換行 MOV AH,09H INT 21H MOV CL,DATA+1 DEC CL;設(shè)置外循環(huán)次數(shù)LOOP1:PUSH CX;保存外循環(huán)次數(shù) MOV BX,0LOOP2: MOV AL,DATA+2BX;備份 CMP AL,DATA+2BX+1;相鄰兩個數(shù)比較 JL NEXT XCHG AL,DA
29、TA+2BX+1;相鄰兩個數(shù)交換 MOV DATA+2BX,ALNEXT:INC BX LOOP LOOP2 POP CX;外循環(huán)次數(shù)出棧 LOOP LOOP1 LEA DX,MESSAGE2;提示語 MOV AH,09H INT 21H LEA BX,DATA+2 MOV CL,DATA+1 MOV DI,0DISPLAY:MOV DL,BX+DI;輸出顯示 MOV AH,02H INT 21H INC DI LOOP DISPLAY MOV AH,4CH;返回DOS INT 21HCODES ENDS END START實(shí)驗(yàn)九8255芯片應(yīng)用實(shí)驗(yàn)?zāi)康模?.熟悉8255芯片的應(yīng)用。2掌握控制
30、字等的使用。實(shí)驗(yàn)要求:將8255的某個口作為輸入口,接8個開關(guān)。8255的某個口作為輸出口,接由74LS245驅(qū)動的發(fā)光二極管,輸出口的8位數(shù)據(jù)線接74LS245的輸入引腳,74LS245輸出引腳接發(fā)光二極管的負(fù)極,發(fā)光二極管的正極通過限流電阻接+5V。編程,將輸入口的數(shù)據(jù)輸出,寫入輸出口。運(yùn)行程序后,撥動一下開關(guān),開關(guān)接地,則發(fā)光二極管亮。撥動一下開關(guān),開關(guān)接+5V則二極管滅。實(shí)驗(yàn)匯編源程序如下:data segment data endsstack segment stack sta dw 50 dup(?)top equ length stastack endscode segmenta
31、ssume cs:code,ds:data,es:data,ss:stackstart: mov dx,203h mov al,90h ;命令字 out dx,al xor ax,ax loop1: mov dx,200h in al,dx ;讀取A端口信息 mov dx,202h out dx,al ;輸出到C端口 jmp loop1 code ends end start實(shí)驗(yàn)總結(jié): 1、 本實(shí)驗(yàn)使用通用并行接口芯片8255進(jìn)行控制8個二極管亮滅。其中8255由3個端口,A、B、C。實(shí)驗(yàn)中使用A作為輸入端,C作為輸出端,B也被定義為輸出端但并未使用。2、 芯片端口命令字地址為203h,超過8
32、位要使用dx。用out指令輸出命令字指定端口A輸入方式0,端口B、C輸出方式0。 3、 端口C有專門的控制字,但是本題中不需要使用。只是把從A端口有開關(guān)狀態(tài)控制的信號輸出到C端口并到二極管,控制其亮和滅。實(shí)驗(yàn)十 交通燈實(shí)驗(yàn)?zāi)康模菏煜な褂?255芯片。實(shí)驗(yàn)原理:應(yīng)了解交通燈的運(yùn)行規(guī)律,初始狀態(tài)全為紅。根據(jù)流程圖編寫使交通燈正常工作的程序。74LS240驅(qū)動雙色燈發(fā)光,74LS240輸出端接雙色燈,輸入端DG1DR4,數(shù)據(jù)最低位DG1,最高位DR4。DG1DR4可以接8255某個口,將數(shù)據(jù)送到74LS240,驅(qū)動雙色燈放光。74LS240的2,4,6,8腳是低四位數(shù)據(jù)輸入腳,11,13,15,17
33、是高四位數(shù)據(jù)輸入腳。通過8255某個口送0或1數(shù)據(jù)時應(yīng)返送,在綠燈閃三次之前,先滅綠燈。實(shí)驗(yàn)匯編源程序如下:data segmentdata endsstack segmentsta dw 50 dup(?)top equ length stastack endscode segmentassume cs:code,ds:data,es:data,ss:stackstart: mov dx,203h mov al,90h ;A輸入BC輸出 out dx,al mov al,0fh mov dx,202h out dx,al call delay1 ;延時loop1: mov al,96h ;1
34、0010110 南北綠,東西紅 mov dx,202h out dx,al call delay1 mov al,9fh ;10011111 東西紅(滅綠) mov dx,202h out dx,al call delay2 mov al,96h ;10010110 南北綠,東西紅(亮綠) mov dx,202h out dx,al call delay2 mov al,9fh ;10011111 東西紅(滅綠) mov dx,202h out dx,al call delay2 mov al,96h ;10010110 南北綠,東西紅(亮綠) mov dx,202h out dx,al ca
35、ll delay2 mov al,9fh ;10011111 東西紅(滅綠) mov dx,202h out dx,al call delay2 mov al,96h ;10010110 南北綠,東西紅(亮綠) mov dx,202h out dx,al call delay2 mov al,06h ;00000110 南北黃,東西紅 mov dx,202h out dx,al call delay1 mov al,69h ;01101001南北紅,東西綠(綠亮) mov dx,202h out dx,al call delay1 mov al,6fh ;01101111南北紅(綠滅) mov
36、 dx,202h out dx,al call delay2 mov al,69h ;01101001南北紅,東西綠(綠亮) mov dx,202h out dx,al call delay2 mov al,6fh ;01101111南北紅(綠滅) mov dx,202h out dx,al call delay2 mov al,69h ;01101001南北紅,東西綠(綠亮) mov dx,202h out dx,al call delay2 mov al,6fh ;01101111南北紅(綠滅) mov dx,202h out dx,al call delay2 mov al,69h ;01101001南北紅,東西綠(綠亮) mov dx,202h out dx,al call delay2 mov al,99h ;10011001南北紅,東西黃 mov dx,20
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 店鋪?zhàn)赓U(出租)意向協(xié)議書
- 2025年度高端摩托車租賃及保養(yǎng)服務(wù)合同2篇
- 2025版?zhèn)€人入股合作協(xié)議書:互聯(lián)網(wǎng)公司股權(quán)分配合同4篇
- 2025年度個人消費(fèi)分期付款合同標(biāo)準(zhǔn)7篇
- 2025-2030全球石墨氮化碳行業(yè)調(diào)研及趨勢分析報告
- 2025-2030全球封離型CO2激光器冷水機(jī)行業(yè)調(diào)研及趨勢分析報告
- 2025年全球及中國鼻炎光療儀行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年全球及中國常壓等離子體裝置行業(yè)頭部企業(yè)市場占有率及排名調(diào)研報告
- 2025年度國際貨運(yùn)代理及物流服務(wù)合同
- 商家聯(lián)盟協(xié)議書
- 2024年公安部直屬事業(yè)單位招聘筆試參考題庫附帶答案詳解
- 2022-2023學(xué)年四川省南充市九年級(上)期末數(shù)學(xué)試卷
- 組建農(nóng)產(chǎn)品供應(yīng)鏈公司方案
- 公轉(zhuǎn)私人轉(zhuǎn)賬協(xié)議
- 液壓阻尼器工作原理
- 移動商務(wù)內(nèi)容運(yùn)營(吳洪貴)任務(wù)四 圖文類內(nèi)容的打造
- 個人房屋買賣購房合同
- 航空油料計(jì)量統(tǒng)計(jì)員(初級)理論考試復(fù)習(xí)題庫大全-下(判斷題匯總)
- 2022年度上海市養(yǎng)老護(hù)理員技師考試題(含答案)
- 養(yǎng)老護(hù)理員培訓(xùn)老年人日常生活照料
- 各種抽油泵的結(jié)構(gòu)及工作原理幻燈片
評論
0/150
提交評論