版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、重慶科技學(xué)院試卷庫系統(tǒng)試卷庫導(dǎo)出試卷微機原理及應(yīng)用-編程題(43題)題序:0017 題型:06 難度:01 分值:10.0章號:03 節(jié)號:02知識點:。8086/8088指令系統(tǒng)題干:變量datax和datay定義如下: datax dw 0148h dw 2316h datay dw 0237h
2、60; dw 4052h試編寫一個程序段,實現(xiàn)將datax和datay兩個字數(shù)據(jù)相乘(用mul)。答案: 解: (1) mov ax, dataxmul dataymov datay,axmov
3、; datay+2,dx題序:0018 題型:06 難度:02 分值:10.0章號:03 節(jié)號:02知識點:。8086/8088指令系統(tǒng)題干:變量datax和datay定義如下: datax dw 0148h dw 2316h datay dw 0237h &
4、#160; dw 4052h試編寫一個程序段,實現(xiàn)將datax除以23(用div)。答案: 解: (1) mov ax, datax mov bl, 23div
5、0; blmov bl,ahmov ah, 0mov datay, ax 。存放商mov al,blmov datay+2, dx &
6、#160; 。存放余數(shù)題序:0002 題型:06 難度:03 分值:10.0章號:03 節(jié)號:02知識點:。8086/8088指令系統(tǒng)題干:試編寫一個程序段,實現(xiàn)將bx中的數(shù)除以10,結(jié)果仍放在bx中。 答案: 解: mov cl,0ah mov ax,bx
7、 div cl mov bx,ax題序:0016 題型:06 難度:03 分值:10.0章號:03 節(jié)號:02知識點:。8086/8088指令系統(tǒng)題干:變量datax和datay定義如下:
8、160; datax dw 0148h dw 2316h datay dw 0237h
9、160; dw 4052h試編寫一個程序段,實現(xiàn)將datax和datay中的兩個雙字數(shù)據(jù)相加, 和存放在datay和答案: 解: (1) mov ax, dataxadd ax, dataymov bx, datax+2add &
10、#160; bx, datay+2mov datay, axmov datay+2, bx題序:0020 題型:06 難度:03 分值:10.0章號:03 節(jié)號:02知識點:。8086/8088指令系統(tǒng)題干:變量n1和n2均為2字節(jié)的非壓縮bcd數(shù)碼,請寫出計算n1與n2之差的指令序列。答案: 解: mov ax, 0mov &
11、#160; al, n1+1sub al, n2+1aasmov dl, almov al, n1sbb al, n2aasmov dh, al題序:0006 題型:06 難度:02 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)崿F(xiàn)對兩個存儲區(qū)中的字進行比較。如找到一對不同的字,則退出,此時 ,zf為0,di 指向此字;如兩個存儲區(qū)中所有的字都相同,則退出程序時,cx中值為0,zf為
12、1。答案: 解: matt: mov si, offset source 。 源區(qū)首址 mov di, offset target 。 目的區(qū)首址 mov
13、60; cx, number jcxz exit 。 如cx為0,則結(jié)束 push cx
14、0; 。 保存有關(guān)寄存器 push si push di cld
15、0; 。 清方向標(biāo)志 repe cmpsw jz
16、 match 。 比較 pushf
17、。 zf為1,則轉(zhuǎn)移 sub di, 2 。 zf為0,則di指向次字 popf jmp
18、0; exit 。 推出match: pop di 。 恢復(fù)寄存器
19、60; pop si pop cxexit: ret題序:0015 題型:06 難度:02 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:根據(jù)下列要求編寫一個匯編語言程序::(1)代碼段的段名為cod_sg(2)數(shù)據(jù)段的段名為dat_sg(3)堆棧段的段名為stk_sg(4)變量high_dat所包含的數(shù)據(jù)為9
20、5(5)將變量high_dat裝入寄存器ah,bh和dl(6)程序運行的入口地址為start答案: 解: dat_sg segemnt high_dat db 95dat_sg ends。stk_sg
21、segment dw 64 dup(?)stk_sg ends。cod_sg segmentmain proc farassum
22、e cs: cod_sg, ds: dat_sg, ss: stk_sgstart: mov ax, dat-sg mov ds, ax mov
23、 ah, high_dat mov bh, ahmov dl, ahmov ah, 4chint 21hmain
24、0; endpcod_sg ends end start題序:0026 題型:06 難度:02 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:已知整數(shù)變量a和b,試編寫完成下述操作的程序:(1)若兩個數(shù)中有一個是奇數(shù),則將該奇數(shù)存入a中,偶數(shù)存入b中;(2)若兩個數(shù)均為奇數(shù),則兩數(shù)分別加1,并存回原
25、變量;(3)若兩個數(shù)均為偶數(shù),則兩變量不變。答案: 解: dseg segment a dw ? b dw ?dseg endscseg segmentmain
26、 proc farassume cs:cseg,ds:dsegstart: push ds sub ax,
27、ax push ax mov ax,dseg
28、160; mov ds,axbegin: mov ax,a mov bx
29、,b xor ax,bx test ax,0001
30、; jz class test bx,0001 &
31、#160; jz exit xchg bx,a &
32、#160; mov b,bx jmp exitclass: test b
33、x,0001 jz exit inc b
34、0; inc aexit: retmain endpcseg ends &
35、#160; end start題序:0001 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:在ds段中有一個從table開始的由160個字符組成的鏈表,設(shè)計一個程序,實現(xiàn)對此表進行搜索,找到第一個非0元素后,將此單元和下一單元清0。答案: 解: mov cx, seg table
36、; mov ds, cx 。將段地址送ds mov si, offset table 。表偏移量送si mov cx, 160
37、60; 。字節(jié)數(shù) xor al, al next: cmp al, si jne exit1
38、60; inc si loop next exit1: mov si, al inc si mov si, al題序:0004 題型
39、:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:用循環(huán)控制指令設(shè)計程序段,從60h 個元素中尋找一個最大值,結(jié)果放在al中。答案: 解: mov si, offset data1 。 將數(shù)據(jù)起始地址送si mov cx, 5fh
40、0; 。 有60h-1次循環(huán) mov al, si 。 將第一個元素放al中compare: inc si cmp al, si jl xchm
41、ax jmp next xchmax: mov al, sinext: loop compare題序:0007 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)崿F(xiàn)在table 為起始地址的100個字符長度的表中檢索“$"字符。答案: 解: start: mov c
42、x, seg table 。 表段地址送es mov es, cx mov di, offset table 。 表偏移量送di
43、160; mov al, '$' 。 檢索的關(guān)鍵字 mov cx, 64h 。
44、檢索的字節(jié)數(shù) push di 。 保存起始地址 cld
45、160; 清除方向標(biāo)志 repne scasb
46、 。 檢索 jnz nfoun 。 如未找到,則轉(zhuǎn)移 sub di, 1
47、 找到,則指向字符 jmp exitnfoun: pop di
48、0; 。 恢復(fù)起始地址exit: ret 題序:0009 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)崿F(xiàn)兩個16位非組合bcd碼的數(shù)相加。答案: 解: anbcd: mov ch, ah 。 進入程序段時,ax中為第二個操作數(shù)
49、0; add al, bl 。 bx中為被加數(shù),實現(xiàn)低8位相乘 aaa xchg al, ch adc al, bh 。 實現(xiàn)高8位相加 aaa
50、 mov ah, al 。 和保存在ax中 mov al, ch ret題序:0010 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序段設(shè)計一個實現(xiàn)16位非組合bcd碼減法的程序。答案: 解: subcd: mov ch, ah
51、0; 。 ax-bx->ax,為非組合bcd碼 sub al, bl aas &
52、#160; xchg al,ch sbb al,bh aas
53、 mov ah,al mov al,ch
54、0; ret題序:0011 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)崿F(xiàn)兩個16位組合bcd碼相減,進入程序時,bx中為減數(shù),ax中為被減數(shù),程序執(zhí)行后,結(jié)果在ax中。答案: 解: stasub: mov ch, ah 。 保存高8位 sub al, bl 。 低8位相減
55、60; das 。 十進制調(diào)整 xchg al, ch sbb al, bh 。 高8位相減 das mov ah, al 。 結(jié)果
56、在ax中 mov al, ch ret題序:0012 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)崿F(xiàn)兩個16位組合bcd碼相加。進入程序時,bx中為加數(shù),ax中為被加數(shù),程序執(zhí)行后,結(jié)果在ax中。答案: 解: staadd: mov ch, ah 。 ax+bx->ax,為組合bcd碼
57、 add al,bl daa xchg al,c
58、h adc al,bh daa mov
59、; ah,al mov al,ch ret題序:0013 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序?qū)⒁粋€8位二進轉(zhuǎn)換為2位bcd數(shù)字,進入程序時,al中為二進制數(shù),退
60、出程序時,如cf為0,則al中為bcd數(shù)字,如cf為1,則表示由于輸入值超出范圍故結(jié)果無效。答案: 解: start: cmp al, 99 。 是否超出范圍? jbe strat stc
61、0; 。 是,則轉(zhuǎn)exit,并給cf置1 jc exitstrat: mov cl, 10 。 10作為除數(shù) xor ah, ah cbw
62、60; 。 將al中數(shù)擴展到ah div cl 。 除法結(jié)果al中為高位,ah中為低位 mov cl, 4 shl al, cl 。 左移4位 or al,
63、 ah 。 合成bcd碼在al中exit: ret 題序:0014 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序用xlat指令將小于16的二進制數(shù)轉(zhuǎn)換成ascii表示的16進制數(shù)。答案: 解: start: jmp binascascii db '0123456789abcdef'binasc: push bx
64、160; and al, 0fh 。 清除al中高4位 lea bx,ascii 。 bx指向ascii表 xlat 。 轉(zhuǎn)換為ascii碼 pop bx &
65、#160; ret題序:0030 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫完整的8086匯編程序:將字符緩沖區(qū)a的字符'1234567890'倒序存放到緩沖區(qū)b中。答案: 解: dseg segmenta db '1234567890'dseg endseseg
66、 segment b db 10 dup(?)eseg endscseg segment
67、0; assume cs:cseg,ds:dseg,es:esegstart: mov ax,dseg mov ds,ax mov
68、160; ax,eseg mov es,ax lea si,a lea di,b add di,9
69、; mov cx,10 move: cld lodsb std stosb
70、 loop move mov ah,4ch
71、0; int 21hcseg endsend start 題序:0031 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫完整的8086匯編程序:查表求x(0-9)的立方并將結(jié)果存放到變量xxx中去。答案: 解: data segmenttab dw 0,1,8,27,64,125,216,343,5
72、12,729x db 8xxx dw ?data ends code segmentassume cs:code,ds:data
73、160; start: mov ax,data mov ds,ax 。為ds送初值
74、 mov al,x add al ,al mov bl,al 。求立方表的偏移 mov
75、0; bh,0 mov ax,tab bx 。查表 mov xxx,ax 。保存 mov ah
76、,4ch 。返回dos int 21hcode endsend start題序:0033 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序,計算下面函數(shù)的值。答案: 解: data segment
77、60; x dw 34 s dw ?data endscode segment assume cs:code,ds:datastart:mov ax,data mov ds,ax mov ax,x
78、0; ;將x送到ax中 cmp ax,0
79、0; ;(ax)0嗎? jl doub
80、0; ;是,轉(zhuǎn)向doub cmp ax,10
81、160; ;否,(ax)10嗎? jle trib ;是,轉(zhuǎn)向trib&
82、#160; sal ax,1 ;否,乘以4 sal ax,1
83、 jmp exitdoub: sal ax,1 ;乘以2 j
84、mp exittrib: sal ax,1 ;乘以3 add ax,xexit: mov
85、0; s,ax ;保存結(jié)果 mov ah,4ch
86、 ;結(jié)束 int 21hcode ends end start題序:0035 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題
87、干:已知在內(nèi)存中從block單元起存放有20個帶符號字節(jié)數(shù)據(jù)(-7,1,12,-90,-70,34,-1,56,45,-12),統(tǒng)計其中負數(shù)的個數(shù)并放入count單元。答案: 解: data segment block db -7,1,12,-90,-70,34,-1,56,45,-12 cn equ $-block count db ?data e
88、ndscode segment assume ds:data,cs:codestart:mov ax,data mov ds,ax mov dl,0 lea si,block mov cx,cnlp:
89、160; mov al,si test al,80h jz next inc dlnext: inc si loop lp mov count,dl mov
90、 ah,4ch int 21hcode ends end start題序:0036 題型:06 難度:03 分值:10.0章號:04 節(jié)號:02知識點:。匯編語言及程序設(shè)計題干:編寫程序先判斷數(shù)據(jù)段中buffer1單元中的字母是否是大寫字母,若是,將其轉(zhuǎn)換為對應(yīng)的小寫字母。答案: 解: data segmentbuffer db ? data
溫馨提示
- 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年非金屬材料結(jié)構(gòu)件項目建議書
- 2024年年環(huán)保裝備合作協(xié)議書
- 2024年高速鐵路客車軸承項目建議書
- 2024年稀有稀土金屬礦項目建議書
- 2024年非調(diào)質(zhì)鋼項目發(fā)展計劃
- 2024年便攜式振動幅值儀合作協(xié)議書
- 2024年高溫高壓機械密封項目建議書
- 西藥執(zhí)業(yè)藥師藥學(xué)專業(yè)知識(一)模擬題338
- 西藥執(zhí)業(yè)藥師藥學(xué)專業(yè)知識(二)分類模擬題33
- 2024年福建漳州高新技術(shù)產(chǎn)業(yè)開發(fā)區(qū)數(shù)學(xué)六上期末質(zhì)量跟蹤監(jiān)視模擬試題含解析
- 中醫(yī)護理臨床思維課件
- 單位延遲發(fā)工資說明模板
- 人教版六年級上冊數(shù)學(xué)第1-4單元測試卷及答案
- 七年級語文上冊第一單元綜合測試卷
- 高頻通氣的護理
- 量子信息技術(shù)標(biāo)準化圖景(2022)-2023.11
- 護士臨床思維能力培養(yǎng)
- 天津一中初三數(shù)學(xué)第一次月考
- 研究生畢業(yè)生登記表填寫樣表及規(guī)范
- DL∕T 547-2020 電力系統(tǒng)光纖通信運行管理規(guī)程
- 電磁加熱系統(tǒng)設(shè)計
評論
0/150
提交評論