freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

微機(jī)原理與接口技術(shù)實(shí)驗(yàn)指導(dǎo)上(完整版)

2024-12-13 19:13上一頁面

下一頁面
  

【正文】 J文件就更小一些。 /ml 一一一告知 Turbo Assembler按大小寫分別對待所有的符號(hào)名。本節(jié)僅介紹其中的幾個(gè)參數(shù): /c 一一一 允許在列表文件中產(chǎn)生 交叉引用信息 。 ③ 如果不鍵入可選項(xiàng) object ,匯編后自動(dòng)生成與源文件同名的 OBJ文件。 運(yùn)行 ,必須有命令行參數(shù), TASM通過命令行參數(shù) (而不是通過人機(jī)會(huì)話 )獲得匯編信息。根據(jù)具體情況,調(diào)試的過程也不盡相同。就是利用匯編器 (如 MASM或 TASM)對源程序進(jìn)行翻譯,生成擴(kuò)展名為 OBJ的目標(biāo)文件。 ④ 程序框圖。 (3) 程序調(diào)試完后,須由實(shí)驗(yàn)輔導(dǎo)教師在機(jī)器上檢查運(yùn)行結(jié)果,經(jīng)教師認(rèn)可后的源程序要請教師在程序清單上簽字。 2. 實(shí)驗(yàn)要求 (1) 上機(jī)前要作好充分準(zhǔn)備,包括程序框圖、源程序清單、調(diào)試步驟、測試方法、對運(yùn)行結(jié)果的分析等。它包括:調(diào)試情況,如上機(jī)時(shí)遇到的問題及解決辦法,觀察到的現(xiàn)象及其分析,對程序設(shè)計(jì)技巧的總結(jié)及分析等;程序的輸出結(jié)果及對結(jié)果的分析:實(shí)驗(yàn)的心得體會(huì),以及諸如調(diào)試日期、文件存放 的軟盤號(hào)等需要記錄的信息。如對原有的 ASM文件進(jìn)行修改,則在盤上還生成一個(gè)擴(kuò)展名為BAK的 備份文件,它是修改前的 ASM文件自動(dòng)改名形成的。根據(jù)用戶需要,鏈接程序還可生成內(nèi)存分配文件 ( MAP文件 )。 Turbo Assembler Borland公司開發(fā)了 3個(gè)版本的匯編程序 (Turbo , 。鍵入這些文件名的時(shí)候,可以自帶擴(kuò)展名。開頭,參數(shù)可以連用,也可以單獨(dú)使用,參數(shù)可以緊跟在 TASM之后鍵入 ( 然后空一格再鍵入源文件名 ),也可以在命令行末尾鍵入。 /? 一一一 與 /h 功能相同。當(dāng)命令行上顯式地指明列表文件,或使用 /l可選項(xiàng)要求生成列表文件時(shí),再用 /n才能有效,否則 /n將無效。 用戶在匯編源程序時(shí),可根據(jù)需要選擇不同的選項(xiàng)。 ③ mapfile是用戶指定的鏈接后生成的映像文件名,如果該項(xiàng)缺省, TLINK自動(dòng)生成與可執(zhí)行文件同名的映像文件 (MAP)。 /k 一一一一 刪除 No Stack 警告信息。 Borland公司的 Turbo Debugger(簡稱 TD)是一個(gè)較先進(jìn)的源代碼級和機(jī)器指令級的調(diào)試器,本節(jié)詳細(xì)介紹它的使用方法。此時(shí),代碼顯示區(qū)顯示的是當(dāng)前 CS: IP 處的若干指令,其他 4 個(gè)調(diào)試顯示框的內(nèi)容也都是當(dāng)前 CPU 的信息,因此,這個(gè)界面又被稱為 CPU 窗口 。頂部為主菜單,底部為快捷鍵操作提示區(qū),中間是 5 個(gè)顯示調(diào)試區(qū) 。 (1) 查看和修改代碼區(qū)內(nèi)容 代碼顯示區(qū)顯示的是以行為單位的機(jī)器指令的反匯編和以十六進(jìn)制數(shù)表示的機(jī)器指令,每行行首是指令地址,該地址用段值和偏移量來表示。直接按字符或數(shù)字鍵,就會(huì)彈出一個(gè)用于輸入?yún)R編格式指令的對話框,輸入的指令被覆蓋到光條所指示的存儲(chǔ)單元中。 ⑤ 修改內(nèi)存單元的內(nèi)容也是方便的。 (4) 查看和修改標(biāo)志位狀態(tài) 當(dāng)該區(qū)成為活動(dòng)區(qū)時(shí),使用光標(biāo)控制鍵可移動(dòng)光條。 1. File File 項(xiàng)的二級菜單提供了與文件有關(guān)的操作,如: Open: 裝入一個(gè)待調(diào)試的程序。該選項(xiàng)可以讓用戶進(jìn)行 DOS 下的操作,按 EXIT 命令可以返回 TD。例如: Breakpoints : 設(shè)置一個(gè)斷點(diǎn)。該選項(xiàng)允許用戶同時(shí)打開幾個(gè)磁盤文件,以進(jìn)行比較。 Goto Cursor (快捷鍵 F4) :程序運(yùn)行至當(dāng)前光標(biāo)處暫停。 Program reset (快捷鍵 Ctrl+F2 ) : 重新裝入當(dāng)前文件。 7. Options Options 選項(xiàng)是用戶用來設(shè)置顯示、宏匯編、當(dāng)前程序用的語言、配置等功能 12 用的。 Next pane (快捷鍵 Tab) : 變下一個(gè)窗口為活動(dòng)窗口。 FILENAMEzHELLO . ASM DATA SEGMENT MESG DB ?HELLO‘ DB 0 , 0 , 0 。 ⑥ MOV MESG+6 , 0 。 注意: Alt 鍵要多按一會(huì)兒,直到快捷鍵提 示區(qū)更換提示內(nèi)容之后再按 F5 鍵。 ② F7 (Run | Trace into) 單步操作 。 (5) 斷點(diǎn)的設(shè)置和取消 按 ↑、 ↓鍵,使光標(biāo)指向欲設(shè)置斷點(diǎn)的指令,再按 F2 鍵 (Breakpoints | Toggle),則紅色光條覆蓋光標(biāo)處的指令,表示斷點(diǎn)設(shè)置成功,重復(fù)上述操作,可以設(shè)置多個(gè)斷點(diǎn)。 做好以上準(zhǔn)備工作之后,按 F8 鍵單步執(zhí)行指令,就可以看到用戶數(shù)據(jù)段內(nèi)容的變化。這 7 個(gè)文件是:編輯文件,TASM . EXE, TLINK . EXE, RTM . EXE, DPMI16BI . OVL, TD. EXE 和。FILENAME: DATA SEGMENT N1 DW 0809H , AB N2 DB 100 SUN DB ? MESG DB ?100+9=39。 和數(shù)與 100 比較 JC NEXT1 。 生成個(gè)位數(shù) RET N2_10: ENDP CODE ENDS END BEG 順序程序設(shè)計(jì) 【實(shí)驗(yàn)?zāi)康摹? 學(xué)習(xí)匯編語言基本操作指令 和偽指令的應(yīng)用;了解編程的基本方法。 。 sub low order digit AAS 。 add lowerorder in AL AAA 。 ASCII string OR Z+2 , 30H MOV DX , OFFSET Z 。 要求: ① 上述實(shí)驗(yàn)中的各變量單元要在數(shù)據(jù)區(qū)定義; ② 用 TD(或 debug)調(diào)試,運(yùn)行并修改各變量的值,觀察結(jié)果存放單元。循環(huán)的結(jié)束條件應(yīng)該是在找到用戶所指定的項(xiàng)時(shí)就可退出循環(huán),但還必須考慮在表格中未查到所需編號(hào)的特殊情 況。 Table search 。 on stack mov ax , datasg mov ds , ax 。 No. of entries Lea si , stoktab a20: cmp ax , word ptr [si] 。 codesg ends 。現(xiàn)將 寄存器的分配情況說明如下 : AX 存放當(dāng)前被測學(xué)生的成績; BX 存放當(dāng)前被測學(xué)生的相對地址指針; 22 CX 內(nèi)循環(huán)計(jì)數(shù)值; DX 當(dāng)前被測學(xué)生的名次計(jì)數(shù)值; SI 內(nèi)循環(huán)測試時(shí)的地址指針; DI 外循環(huán)計(jì)數(shù)值。 Starting execution address, Set up stack 。 into DS register 。 實(shí)驗(yàn)要求:按 15 行 16 列的表格形式顯示 ASCII碼為 10H 100H的所有字符,即以行為主的順序及 ASCII 碼遞增的次序依次顯示對應(yīng)的字符。 【 實(shí)驗(yàn) 】統(tǒng)計(jì)負(fù)數(shù)的個(gè)數(shù) 設(shè)數(shù)據(jù)段有 8個(gè)有符號(hào)數(shù): NUM DB 19, +28, 37, 46, +55, 61, 74, +255 設(shè)計(jì)一個(gè)程序 (不是兩個(gè)程序 )完成兩項(xiàng)要求: (1) 統(tǒng)計(jì)并且顯示負(fù)數(shù)的個(gè)數(shù) ,存入 N單元; 找出真值最大的數(shù), 存入 MAX單元。 分支程序的設(shè)計(jì) 【 實(shí)驗(yàn)?zāi)康?】 學(xué)習(xí)分支程序的結(jié)構(gòu),掌握具有分支結(jié)構(gòu)程序的設(shè)計(jì)方法。 into DS register 。 70 ? jl six cmp ax , 80 。根據(jù) AL 寄存器中哪一位為 1(從低位到高位 )把程序轉(zhuǎn)移到 8 個(gè)不同的程序分支去。 starting execution address set up stack for return push ds 。 bx set to location holding address of first routine 1: shr al , 1 。 we reach here only if no bit was set ┇ 。 提示 : (1) 程序可采用 0AH 功能調(diào)用把鍵入的字符直接送入到緩沖區(qū)中,然后再逐個(gè)取出分類計(jì)數(shù)。 1. 示例 【 例 】 十進(jìn)制數(shù)到十六進(jìn)制數(shù)轉(zhuǎn)換程序。 MAIN PART OF PROGRAM. 。 PROCEDURE TO CONVERT DEC ON KEYBD TO BINARY, 。 is it9d? jg exit 。 number times 10 xchg ax , bx 。 。 convert h。 CONSOLE SCREEN binihex proc near mov ch , 4 。 number 。 byte in AL to word in AX 。 clear BX for number 。 keyboard to binary call crif 。 采用子程序結(jié)構(gòu),程序安排為: 子程序名 DECIBIN: 功能:從鍵盤取得十進(jìn)制數(shù)并將其轉(zhuǎn)換為二進(jìn)制數(shù); 子程序名 BINHEX: 功能:把二進(jìn)制數(shù)以十六進(jìn)制數(shù)形式在屏上顯示; 子程序名 CRLF: 功能:回車和換行 。 (2) 程序需進(jìn)入 TD(或 debug)運(yùn)行并查看計(jì)數(shù)結(jié)果。 procedure_select ends 。 if CF = 0, the on bit in al has not yet ben found jmp word ptr [bx] 。 put zero in bx 27 push bx 。 branch_addr segment 。 90 ? jl eight cmp ax , 100 。 GOES HERE mov s5 , 0 。 設(shè)有 10個(gè)學(xué)生的成績分別為 5 6 8 8 7 8 9 6 100和 80分。 ② 最 大的真值數(shù)應(yīng)是 3DH。 提示 : (1) 顯示每個(gè)字符可使用功能號(hào)為 02 的顯示輸出功能調(diào)用,使用方法如下: mov ah , 02h mov dl , 輸出字 符的 ASCII碼 int 21h 本題中可把 DI初始化為 10H,然后不斷使其加 1(用 INC指令 ) 以取得下一個(gè)字符時(shí) ASCII碼。 return to DOS main endp 。 Save old data segment sub ax , ax 。 [程序清單 ]: datarea segment 。 end of code assembly [運(yùn)行情況 ]: C:\tsrch stock nember? 23 Processors stock nember? 27 Pumps stock nember? 05 Excavators stock nember? C:\tsrch stock nember? 09 Presses stock nember? 08 Lifters stock nember? 12 Valves stock nember? Not in table! 【 例 】 建立學(xué)生名次表 rank 以 grade 為首地址的 10 個(gè)字的數(shù)組中保存了學(xué)生的成績,其中 grade+i 保存學(xué)號(hào)為 i+1 的學(xué)生的成績。 equel exit add si , 14 。register mov es , ax 。 codesg segment para ?code‘ assume cs: codesg , ds: datasg , es: datasg main proc far push ds 。如用戶給出的編號(hào)可在表格中查到,則顯示出相應(yīng)的庫存品名。 1. 示 例 【 例 】 表格查找 tabsrch 19 倉庫管理中,總共存有有關(guān)庫存品的編號(hào)、名稱、數(shù)量、價(jià)格等情況的表格,根據(jù)用戶提供的編號(hào)可以找到有關(guān)材料。 display string function INT 21H 。 exchange high_order in AL ADC AL , X 。 put result in Z‘s low order MOV AL , Y 。2439。程序流程見圖 。 否則 ,和數(shù)減 10O INC [BX+7] 。 3 個(gè) 0 的 ASCII 碼
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1