版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
山東大學(xué)計(jì)算機(jī)實(shí)驗(yàn)報(bào)告
實(shí)驗(yàn)題目:字處理演示程序wspp
學(xué)號:201405130158
日期:2016.12.12
班級:2014級4班
姓名:寇曉宇
Email:
714366968@
實(shí)驗(yàn)?zāi)康模?/p>
學(xué)習(xí)鍵盤處理程序。
學(xué)習(xí)利用掃描碼進(jìn)行功能控制的程序?qū)嵗?/p>
硬件環(huán)境:
windows10操作系統(tǒng)
軟件環(huán)境:
DosBox命令行,masm圖形化工具,debug
實(shí)驗(yàn)步驟:
[字處理演示程序wspp]
一、實(shí)驗(yàn)源程序清單
TITLEWSPP--PROGANMOFWORDPROCESSFUNCTION
;
;
dseg segment
kbd_buf db 96dup('')cntl db 16dup(0)
bufpt dw 0
buftl dw 0
colpt db 0
rowpt db 0
rowmx dw 0
dseg ends
;
curs macro row,colmov dh,row
mov
dl,col
mov
bh,0
mov
ah,2
int
10h
endm
;
cseg
segment
main
proc
far
assume cs:cseg,ds:dseg,es:dseg
start:
push ds
sub ax,ax
push ax
mov ax,dseg
mov ds,ax
mov es,ax
mov buftl,0
mov colpt,0
mov rowpt,0
mov bufpt,0
mov rowmx,0
mov cx,lengthcntl
mov al,0
lea di,cntlcld
rep stosb
mov ah,6
mov al,0
mov cx,0
mov dh,24
mov dl,79
mov bh,07
int 10h
curs 0,0
read_k:
mov ah,0
int 16h
cmp al,1bh
jnz arrowret
arrow:
;
cmp ah,4bh
jz left
cmp ah,4dh
jz right
inst: jmp ins_kleft: jmp left_kright: jmp right_k
;
ins_k:
km:
mov bx,bufpt
mov cx,buftl
cmp bx,cx
je km
lea di,kbd_buf
add di,cx
mov si,di
dec si
sub cx,bxstd
rep movsb
mov kbd_buf[bx],alinc bufpt
inc buftl
cmp al,0dh
jnz kn
lea si,cntl
add si,rowmx
inc si
mov di,si
inc di
mov cx,rowmx
sub cl,rowptstd
rep movsb
mov bl,rowpt
xor bh,bh
mov cl,colpt
mov ch,cntl[bx]
sub ch,colpt
mov cntl[bx],cl
mov cntl[bx+1],ch
mov ax,rowmx
mov bh,07
mov ch,rowpt
mov dh,24
mov cl,0
mov dl,79
mov ah,6
int 10h
kn:
kp:
inc rowpt
inc rowmx
mov colpt,0
jmp shortkp
mov bl,rowpt
xor bh,bh
inc cntl[bx]
inc colpt
call dispbf
curs rowpt,colptjmp read_k
left_k:
cmp colpt,0
jnz k2
cmp rowpt,0
jz lret
dec rowpt
mov al,rowpt
lea bx,cntl
xlat cntl
mov colpt,al
jmp k3
k2:
k3:
lret:
dec colpt
dec bufpt
curs rowpt,colpt
jmp read_k
right_k:
mov bx,bufpt
k4:
rret:
;
cmp bx,buftl
je rret
inc colpt
cmp kbd_buf[bx],0dhjnz k4
inc rowpt
mov colpt,0
inc bufpt
curs rowpt,colptjmp read_k
dispbf proc nearmov bx,0
mov cx,96
curs 0,0
disp:
mov al,kbd_buf[bx]
push bx
mov bx,0700
mov ah,0eh
int 10h
pop bx
cmp al,0dh
jnz kk
mov al,0ah
mov ah,0eh
int 10h
kk:
inc bx
loop dispret
dispbf endp
;
main endp
;
cseg ends
endstart
二、編譯及運(yùn)行結(jié)果
1.運(yùn)行wspp.exe程序
問題與收獲:
問題:
這個程序是一個具有左右移動和字符插入功能的簡化程序,采用case分支結(jié)構(gòu),根據(jù)輸入鍵的字符碼和掃描碼,由一段JMP指令組成跳轉(zhuǎn)程序,分別轉(zhuǎn)入不同的程序段。在這些功能段中,最重要的工作是管理當(dāng)前光標(biāo)位置的指針和鍵盤緩沖區(qū)的頭、尾指針。為此,在數(shù)據(jù)段中要記得設(shè)置一個60H字節(jié)的緩沖區(qū),兩個字的緩沖區(qū)頭、尾指針等等。
收獲:感覺這次實(shí)驗(yàn)比較復(fù)雜,
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 小學(xué)生消防演練課
- 超星食品安全組日常飲食
- 部編版八年級地理上冊第三章第一節(jié)《自然資源的基本特征》課件
- 放射性皮炎的護(hù)理重點(diǎn)
- 1.1 物質(zhì)結(jié)構(gòu)研究的內(nèi)容課件高二上學(xué)期化學(xué)蘇教版(2019)選擇性必修第二冊
- 彩虹教案反思
- 虎和兔說課稿
- 函數(shù)的說課稿
- 產(chǎn)科科室護(hù)理一級質(zhì)控
- 被針刺傷應(yīng)急演練
- 家鄉(xiāng)介紹山東日照概述課件
- 基于Android的天氣預(yù)報(bào)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 企業(yè)和銀行合作情況報(bào)告
- (完整)中醫(yī)癥候積分量表
- 小學(xué)奧數(shù) 等量代換(含答案)
- 小學(xué)科學(xué)教師基本功大賽試題匯總
- 武漢理工大學(xué)土力學(xué)與基礎(chǔ)工程(新)考試答案
- 《敘事療法案例》課件
- 物聯(lián)網(wǎng)技術(shù)在軍事上的應(yīng)用與現(xiàn)代戰(zhàn)爭教案
- 科技暢想未來主題班會 課件
- 《員工心理健康》課件
評論
0/150
提交評論