2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩9頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  附:課程設(shè)計(jì)報(bào)告格式</p><p>  《組成原理實(shí)踐》課程設(shè)計(jì)報(bào)告</p><p>  題目:簡單字符串處理系統(tǒng)的實(shí)現(xiàn)</p><p>  完成日期: 2013 年 1 月 6 日</p><p><b>  課程設(shè)計(jì)目的</b></p><p>  1、掌握并鞏

2、固順序、分支、循環(huán)結(jié)構(gòu)以及子程序結(jié)構(gòu)的匯編程序設(shè)計(jì)基本技術(shù)和基本方法。</p><p>  2、理解計(jì)算機(jī)在指令系統(tǒng)級的運(yùn)行原理,熟悉DOS功能子程序的調(diào)用。</p><p>  3、掌握輸入輸出子程序的編寫。</p><p>  4、掌握從鍵盤輸入字符(串)與在顯示屏上顯示字符(串)的基本方法。</p><p><b>  二、課

3、程設(shè)計(jì)內(nèi)容</b></p><p>  輸入一個(gè)字符串,掃描該字符串,按數(shù)字、字母和特殊字符3類,把字符分類輸出到屏幕,同時(shí)輸出各類字符的個(gè)數(shù)。</p><p><b>  三、課程設(shè)計(jì)過程</b></p><p>  1、算法設(shè)計(jì)(畫出算法流程圖)</p><p><b>  2、程序代碼<

4、/b></p><p>  ; multi-segment executable file template.</p><p>  data segment</p><p>  ; add your data here!</p><p>  string1 db "please input a string:$"&l

5、t;/p><p>  string2 db "sum of chars:$" </p><p>  string3 db "sum of digits:$"</p><p>  string4 db "sum of others:$"</p><p>  chars db 0;字母<

6、;/p><p>  digit db 0;數(shù)字</p><p>  others db 0;其他</p><p><b>  ends</b></p><p>  stack segment</p><p>  dw 128 dup(0)</p><p><b>

7、;  ends</b></p><p>  code segment</p><p><b>  start:</b></p><p>  ; set segment registers:</p><p>  mov ax, data</p><p>  mov ds, ax</

8、p><p>  mov es, ax</p><p>  ; add your code here</p><p>  lea dx, string1 ;顯示輸入提示信息</p><p>  mov ah, 09H ;ah 累加器 09H 屏幕顯示功能</p><p>  int 21h ; output s

9、tring at ds:dx</p><p>  mov cx,100 ;設(shè)置循環(huán)次數(shù)足夠大</p><p>  L1:mov AH,01H ; 中斷調(diào)用,單字符輸入</p><p>  int 21h ;輸入符號的ASCII代碼在AL寄存器中</p><p>  cmp AL,0DH ;若輸入回車符則結(jié)束</p&

10、gt;<p><b>  jz over2</b></p><p>  cmp AL,30H ;若<30H(0),others++</p><p><b>  jb other</b></p><p>  cmp AL,39H ;若>39H,跳轉(zhuǎn)進(jìn)一步比較</p><

11、;p>  ja higher1</p><p>  jmp digital ;digit++</p><p>  higher1:cmp al,41H ;若if<41H(A),others++</p><p><b>  jb other</b></p><p>  cmp AL,5AH

12、 ;若if>5AH(Z),跳轉(zhuǎn)繼續(xù)比較</p><p>  ja higher2</p><p>  jmp char ;alphau++</p><p>  higher2:cmp AL,61H ;若if<61H(a),others++</p><p><b>  jb other</b&g

13、t;</p><p>  cmp AL,7AH ;若if>7AH(z),others++</p><p><b>  ja other</b></p><p>  jmp char ;alphau++</p><p>  jmp over ;比較結(jié)束</p><p>

14、;  other:inc others ;others++</p><p>  jmp over ;比較結(jié)束</p><p>  char:inc chars ;alphal++</p><p>  jmp over ;比較結(jié)束</p><p>  digital:inc digit ;dig

15、it++</p><p>  jmp over ;比較結(jié)束</p><p><b>  over:nop</b></p><p>  loop L1 ;循環(huán),輸入下一字符</p><p>  over2:call endline ;回車換行</p><p>

16、;  lea dx,string2 ;字符串的輸入char</p><p>  mov ah,09h</p><p><b>  int 21h</b></p><p><b>  xor ax,ax</b></p><p>  mov al,chars ;將統(tǒng)計(jì)的字符送ax</p&

17、gt;<p>  call display ;調(diào)用輸出兩位字符的子程序</p><p>  call endline</p><p>  lea dx,string3 ;字符串的輸出digits</p><p>  mov ah,09h</p><p><b>  int 21h</b></p

18、><p><b>  xor ax,ax</b></p><p>  mov al,digit ;將統(tǒng)計(jì)的數(shù)字送ax</p><p>  call display ;調(diào)用輸出兩位數(shù)字的子程序</p><p>  call endline</p><p>  lea dx,string4 ;字

19、符串的輸入others</p><p>  mov ah,09h</p><p><b>  int 21h </b></p><p><b>  xor ax,ax</b></p><p>  mov al,others ; 將統(tǒng)計(jì)的數(shù)字送ax</p><p>  cal

20、l display ;調(diào)用輸出兩位數(shù)字的子程序</p><p>  mov ah,4ch</p><p><b>  int 21h</b></p><p>  endline proc near;控制輸出格式,輸出回車換行子程序</p><p>  mov ah,02h</p><p> 

21、 mov dl,0ah</p><p>  int 21h ;輸出換行符</p><p>  mov ah,02h</p><p>  mov dl,0dh</p><p>  int 21h ;輸出回車符</p><p><b>  ret</b></p>&l

22、t;p>  endline endp </p><p>  display proc near;輸出兩位數(shù)字的子程序(十進(jìn)制)</p><p><b>  mov bl,10</b></p><p>  div bl ;ax/bl,al=商,ah=余數(shù)</p><p>  push ax ;保存ax中

23、的信息</p><p><b>  mov dl,al</b></p><p>  add dl,30h</p><p>  mov ah,02h</p><p>  int 21h ;輸出十位數(shù)</p><p>  pop ax ;出棧送AX</p><p&

24、gt;<b>  mov dl,ah</b></p><p>  add dl,30h</p><p>  mov ah,02h </p><p>  int 21h ;輸出個(gè)位數(shù)</p><p><b>  ret</b></p><p>  dis

25、play endp; output string at ds:dx</p><p>  ; wait for any key.... </p><p><b>  mov ah, 1</b></p><p><b>  int 21h</b></p><p>  mov ax, 4c00h ;

26、 exit to operating system.</p><p>  int 21h </p><p><b>  ends</b></p><p>  end start ; set entry point and stop the assembler.</p><p>  3、系統(tǒng)運(yùn)行結(jié)果截圖</p&

27、gt;<p><b>  四、課程設(shè)計(jì)體會</b></p><p>  通過綜合的編程實(shí)踐,熟悉運(yùn)用指令,熟悉DOS功能子程序的調(diào)用,掌握輸入輸出子程序的編寫,掌握從鍵盤輸入字符(串)與在顯示屏上顯示字符(串)的基本方法。使我在學(xué)習(xí)完《計(jì)算機(jī)組成與結(jié)構(gòu)》理論知識的基礎(chǔ)上,進(jìn)一步地理解計(jì)算機(jī)在指令系統(tǒng)級的運(yùn)行原理,更好地掌握指令的工作原理以及CPU與外設(shè)交互的具體方式。</

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論