歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

數(shù)碼轉(zhuǎn)換 實(shí)驗報告材料微機(jī)原理

  • 資源ID:83468943       資源大小:569.50KB        全文頁數(shù):16頁
  • 資源格式: DOC        下載積分:10積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要10積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

數(shù)碼轉(zhuǎn)換 實(shí)驗報告材料微機(jī)原理

word實(shí)驗九 數(shù)碼轉(zhuǎn)換一、實(shí)驗?zāi)康?、掌握計算機(jī)常用數(shù)據(jù)編碼之間的相互轉(zhuǎn)換方法。2、進(jìn)一步熟悉DEBUG軟件的使用方法。二、實(shí)驗內(nèi)容1. ACSII碼轉(zhuǎn)換為非壓縮型BCD碼編寫并調(diào)試正確的匯編語言源程序,使之實(shí)現(xiàn):設(shè)從鍵盤輸入一串十進(jìn)制數(shù),存入DATA1單元中,按回車停止鍵盤輸入。將其轉(zhuǎn)換成非壓縮型(非組合型)  BCD碼后,再存入DATA2開始的單元中。假如輸入的不是十進(jìn)制數(shù),如此相應(yīng)單元中存放FFH。調(diào)試程序,用D命令檢查執(zhí)行結(jié)果。2. BCD碼轉(zhuǎn)換為二進(jìn)制碼編寫并調(diào)試正確的匯編語言源程序,使之將一個16位存儲單元中存放的4位BCD碼DATA1,轉(zhuǎn)換成二進(jìn)制數(shù)存入DATA2字單元中。調(diào)試程序,用D命令檢查執(zhí)行結(jié)果。3. 十六進(jìn)制數(shù)轉(zhuǎn)換為ASCII碼編寫并調(diào)試正確的匯編語言源程序,使之將內(nèi)存DATA1字單元中存放的4位十六進(jìn)制數(shù),轉(zhuǎn)換為ASC碼后分別存入DATA2為起始地址的4個單元中,低位數(shù)存在低地址的字節(jié)中,并在屏幕上顯示出來。三、 實(shí)驗預(yù)習(xí)1. 復(fù)習(xí)材料中有關(guān)計算機(jī)數(shù)據(jù)編碼局部的內(nèi)容。 2. 按要求編寫程序。 四、 實(shí)驗步驟 1. 編輯源文件,經(jīng)匯編連接產(chǎn)生EXE文件。2. 用DEBUG調(diào)試、檢查、修改程序。五、實(shí)驗內(nèi)容1. ACSII碼轉(zhuǎn)換為非壓縮型BCD碼STACK     SEGMENT PARA STACK 'STACK'               DB 256 DUP(?)              ; 為堆棧段留出256個字節(jié)單位  STACK     ENDS     DATA     SEGMENT PARA 'DATA'     定義數(shù)據(jù)段 DATA1     DB 32                      ; 緩沖區(qū)最大長度DB ?                       DB 32 DUP(?)         DATA2     DB 32 DUP(?)          DATA      ENDS     CODE     SEGMENT                      ; 定義代碼段ASSUME  SS:STACK            ASSUME  CS:CODE           ASSUME DS:DATA                  START:    MOV AX,DATA           MOV DS,AX                      LEA DX,DATA1                  規(guī)定:DX存放輸入字符串的緩沖區(qū)首地址              MOV AH,0AH             INT 21H                       ; 字符串輸入  AL=鍵入的ASCII碼               LEA SI,DATA1                   LEA DI,DATA2                  ; DI存放DATA2首地址              INC SI             MOV CL,SI                   ; 取輸入字符串長度             INC SI                          ; 指向第一個輸入字符           LP1:       MOV AL,SI              SUB AL,30H                   ; 輸入的字符存為ASCII碼,將其轉(zhuǎn)換成十進(jìn)制數(shù)                       CMP AL,0                      假如AL<0(AL-0<0),跳轉(zhuǎn)到LP2             JL LP2              CMP AL,9                     ; 假如AL>9AL-9>0,跳轉(zhuǎn)到LP2             JG LP2                      MOV BL,AL                    將AL->BL MOV DI,BL                   將結(jié)果存到DATA2開始的單元中                       INC DI             INC SI             DEC CL            JMP LP1           LP2:       MOV AL,0FFH       ; 假如輸入的不是十進(jìn)制數(shù),在相應(yīng)的單元存放FFH   以字母開頭的十六進(jìn)制數(shù)前面需加'0'              MOV BL,AL                  將AL->BL              MOV DI,BL              INC DI              INC SI              DEC CL CL=CL-1              JNZ LP1                      CL=0,執(zhí)行LP3中的語句          LP3:    MOV AH,4CH          INT 21H                     CODE   ENDS            END  START 2. BCD碼轉(zhuǎn)換為二進(jìn)制碼DATA SEGMENT DATA1 DW 2497H DATA2 DW ? DATA ENDS CODE SEGMENT ASSUME SS:STACK,CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX XOR BX,BX ; 累加單元清0(BX=0) MOV SI,0AH ; 設(shè)置乘數(shù)10 MOV CL,4 ; 指4位BCD碼 MOV CH,3 ; 循環(huán)次數(shù)=3 MOV AX,DATA1 ; 取十進(jìn)制數(shù) LP: ROL AX,CL ; 取數(shù)字 MOV DI,AX ; 保存當(dāng)前AX值 AND AX,0FH ; 屏蔽高位 ADD AX,BX ; 累加 MUL SI MOV BX,AX MOV AX,DI DEC CH ; 循環(huán)次數(shù)減1 JNZ LP ; 以上完成循環(huán)三次 ROL AX,CL ; 取個位數(shù)字 AND AX,0FH ; 屏蔽高位 ADD AX,BX ; 進(jìn)展累加,直接將最后的累加結(jié)果放到AX中 MOV DATA2,AX MOV AH,4CH INT 21H CODE ENDS END START3. 十六進(jìn)制數(shù)轉(zhuǎn)換為ACSII碼STACK SEGMENT DB 256 DUP(?) STACK ENDS DATA SEGMENT DATA1 DB 24H,06DH DATA2 DB 4 DUP(?) ; 存放ASCII碼 JUMP DB 4 DUP(?) ; 4位十六進(jìn)制數(shù)分別存放在DATA3的4個字節(jié)中 DATA ENDS CODE SEGMENT ASSUME SS:STACK,DS:DATA,CS:CODE START: MOV AX,DATA MOV DS,AX LEA SI,DATA1 LEA DI,JUMP MOV CL,2 ; 循環(huán)2次,取兩次兩位十六進(jìn)制數(shù) LP0: MOV AL,SI ; 取2位十六進(jìn)制數(shù) AND AL,0F0H ; 低四位為零 ROR AL,4 ; 右移4位 相當(dāng)于除以16 MOV DI,AL ; 高位數(shù)存放在高地址字節(jié)中 INC DI MOV AL,SI ; 取2位十六進(jìn)制數(shù) AND AL,0FH ; 高四位為零 MOV DI,AL ; 低位數(shù)存放在低地址字節(jié)中 INC SI INC DI DEC CL JNZ LP0 LEA SI,JUMP ; SI=JUMP的首地址偏移量 LEA DI,DATA2 ; DI=DATA2的首地址偏移量 MOV CL,4 ; 因為是四位十六進(jìn)制數(shù),所以設(shè)置為循環(huán)4次 LP1: MOV AL,SI ; 取JUMP中的十六進(jìn)制數(shù) CMP AL,9 JG LP3 ; 假如AL>9(AL-9>0),跳轉(zhuǎn)到LP3 ADD AL,30H ; 09H+30H=ASCII JMP LP3 LP2: ADD AL,37H ; AFH+30H=ASCII LP3: MOV DI,AL ; 將ASCII碼依次存入DATA2中 INC DI INC SI DEC CL JNZ LP1 MOV AH,09H INT 21H MOV DX,OFFSET DATA2 MOV AH,09H INT 21H MOV AH,4CH INT 21H CODE ENDS END START六、實(shí)驗習(xí)題與思考1.編程實(shí)現(xiàn):從鍵盤上輸入兩位十六進(jìn)制數(shù),轉(zhuǎn)換成十進(jìn)制數(shù)后顯示在屏幕上。STACK SEGMENT DB 256 DUP(?) STACK ENDS DATA SEGMENT DATA1 DB 5,?,2 DUP(?) DATA2 DB 2 DUP(?) DATA3 DB 2 DUP(?) DATA ENDS CODE SEGMENT ASSUME SS:STACK,DS:DATA,CS:CODE START:MOV AX,DATA MOV DS,AX LEA DX,DATA1 MOV AH,0AH INT 21H ;輸入字符串 LEA SI,DATA1+2 LEA DI,DATA2 MOV CL,2 ;將ASC碼轉(zhuǎn)換為十六進(jìn)制數(shù) LP1: MOV AL,SI SUB AL,30H CMP AL,9 JA LP2 MOV DI,AL INC DI INC SI DEC CL JZ LP3 JNZ LP1 LP2: SUB AL,7 MOV DI,AL INC DI INC SI DEC CL JNZ LP1 ;將十六進(jìn)制數(shù)轉(zhuǎn)換成十進(jìn)制數(shù),并保存 LP3: LEA DI,DATA2 MOV AL,DI MOV BL,DI+1 MOV CL,4 SHL AL,CL ADD AL,BL MOV DI,AL LEA SI,DATA3 XOR AH,AH MOV CL,100 DIV CL ;AH=AX%100,AL=AX/100 MOV SI,AL ;保存百位數(shù) MOV AL,AH XOR AH,AH MOV CL,10 DIV CL MOV SI+1,AL ;保存十位數(shù) MOV SI+2,AH ;保存?zhèn)€位數(shù) ;屏幕顯示十進(jìn)制數(shù) LP4: MOV DL,SI ;取百位數(shù)送顯 OR DL,30H MOV AH,02H INT 21H MOV DL,SI+1 ;取十位數(shù)送顯 OR DL,30H MOV AH,02H INT 21H MOV DL,SI+2 ;取個位數(shù)送顯 OR DL,30H MOV AH,02H INT 21H MOV AH,4CH INT 21H CODE ENDS END START2. 十進(jìn)制數(shù)轉(zhuǎn)換為七段碼。 為了在七段顯示器上顯示十進(jìn)制數(shù),需要把十進(jìn)制數(shù)轉(zhuǎn)換為七段代碼。轉(zhuǎn)換可采用查表法。設(shè)需要轉(zhuǎn)換的十進(jìn)制數(shù)已存放在起始地址為DATA1區(qū)域中,七段代碼轉(zhuǎn)換表存放在起始地址為TABLE表中,轉(zhuǎn)換結(jié)果存放到起始地址為DATA2區(qū)域。假如待轉(zhuǎn)換的數(shù)不是十進(jìn)制數(shù),如此相應(yīng)結(jié)果單元內(nèi)容為00H。STACK SEGMENT DB 256 DUP(?) STACK ENDS DATA SEGMENT DATA1 DB 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,'A','B','C','$' TABLE DB 00H,40H,01H,79H,02H,24H,03H,30H,04H,19H,05H,12H,06H,02H, 07H,78H,08H,00H,09H,18H,0AH,08H,0BH,03H,0CH,46H,0DH,21H, 0EH,06H,0FH,0EH ;實(shí)際數(shù)據(jù)定義必須在同一行 DATA2 DB 16 DUP(0) COUNT EQU 2 DATA ENDS CODE SEGMENT ASSUME SS:STACK,DS:DATA,CS:CODE START: MOV AX,DATA MOV DS,AX LEA SI,DATA1 LEA BX,DATA2 LEA DI,TABLE XOR AH,AH LP1: MOV AL,SI ;外循環(huán)DATA1指向下一個 INC SI MOV CX,16 ;內(nèi)循環(huán)TABLE 16次 LP2: CMP DI,AL JE LP3 ADD DI,COUNT ;內(nèi)循環(huán)TABLE指向下一組 DEC CX JNZ LP2 MOV BYTE PTRBX,00H 假如不是十進(jìn)制數(shù),如此結(jié)果保存為00H INC BX CMP AL,'$' ;設(shè)置完畢標(biāo)志 JNZ LP1 JZ LP4 LP3: MOV AL,DI+1 MOV BX,AL ;轉(zhuǎn)換結(jié)果保存在DATA2中 INC BX LEA DI,TABLE CMP CL,0 JNZ LP1 LP4: MOV AH,4CH INT 21H CODE ENDS END START16 / 16

注意事項

本文(數(shù)碼轉(zhuǎn)換 實(shí)驗報告材料微機(jī)原理)為本站會員(沈***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!