匯編經典小程序(共5頁)_第1頁
匯編經典小程序(共5頁)_第2頁
匯編經典小程序(共5頁)_第3頁
匯編經典小程序(共5頁)_第4頁
匯編經典小程序(共5頁)_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、實驗一:判斷一個數X的正,負數,還是零。(假設是正數,輸出+,是負數,輸出-,是零,輸出This is a zore !)DATA SEGMENTX DB 10CR EQU 0DHLF EQU 0AHW DB 'This is a zore!',CR,LF,'$'ZHENG DB '+',CR,LF,'$'FU DB '-',CR,LF,'$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV AL,

2、X AND AL,AL JZ L1 SHL AL,1 JC L3 JMP L2L1: MOV DX,OFFSET W MOV AH,9 INT 21H JMP L4L2: MOV DX,OFFSET ZHENG MOV AH,9 INT 21H JMP L4L3: MOV DX,OFFSET FU MOV AH,9 INT 21H JMP L4L4: MOV AH,4CH INT 21HCODE ENDS END START 實驗二:求十個數中的最小數,并以十進制輸出。(若要求最大的,只要把JC 改為JNC 即可)(僅局限于0-16間的數比較,因為ADD AL,30H只是針對一位的十六進制轉換

3、十進制的算法)DATA SEGMENTXDAT DB 0AH,1FH,02H,03H,04H,05H,06H,07H,08H,09HMIN DB ?CR EQU 0DHLF EQU 0AHW DB ' is min',CR,LF,'$'DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV CX,9 MOV SI,OFFSET XDAT MOV AL,SIL2: CMP AL,SI+1 JC L1 MOV AL,SI+1L1: INC SI LOOP L2 ADD A

4、L,30H MOV DL,AL MOV AH,2 INT 21H MOV DX,OFFSET W MOV AH,9 INT 21HCODE ENDS END START實驗三:設有3個單字節(jié)無符號數存放在BUF開始的緩沖區(qū)中,編寫一個能將它們從大到小從新排列的程序。DATA SEGMENT BUF DB 87,234,123DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV SI,OFFSET BUF MOV AL,SI ;把3個數取到寄存器中 MOV BL,SI+1 MOV CL,SI+2 C

5、MP AL,BL ;排序,將最大數送AL寄存器 JAE NEXT1 XCHG AL,BLNEXT1:CMP AL,CL JAE NEXT2 XCHG AL,CLNEXT2:CMP BL,CL ;將最小輸送CL寄存器 JAE NEXT3 XCHG BL,CLNEXT3:MOV SI,AL ;從大到小依次存回緩沖區(qū),AL,BL,CL MOV SI+1,BL MOV SI+2,CL MOV AH,4CH INT 21HCODE ENDS END START實驗三(2):設某一數組的長度為N,個元素均為字數據,試編制一個程序使該數組中的數據按照從小到大的次序排列。(要從大到小排序,只需把JBE改為JA

6、E即可)ADATA SEGMENT N EQU 10 DATA DW 87,54,78,45,35,23,04H,12H,03H,21H ADATA ENDSACODE SEGMENT ASSUME CS:ACODE,DS:ADATA START:MOV AX,ADATA MOV DS,AX MOV DS,AX MOV BX,0 MOV CX,N DEC CX LOP1: MOV DX,CX LOP2: MOV AX,DATABX CMP AX,DATABX+2 JBE CONTI XCHG AX,DATABX+2 MOV DATABX,AX CONTI: ADD BX,2 LOOP LOP2

7、 MOV CX,DX MOV BX,0 LOOP LOP1 MOV AH,4CH INT 21H ACODE ENDSEND START 實驗四:求十個數中的最小數,并以十六進制輸出。(若要求最大的,只需把JC 改為JNC 即可)DATA SEGMENTXDAT DB 0AH,1FH,0FH,0FH,0EH,0BH,0CH,0DH,0EH,0CHTAB DB 30H,31H,32H,33H,34H,35H,36H,37H,38H,39H,41H,42H,43H,44H,45H,46HMIN DB ?CR EQU 0DHLF EQU 0AHW DB ' is min',CR,LF

8、,'$'DATA ENDSSSEG SEGMENT STACK DW 100 DUP(?)SSEG ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART:MOV AX,DATA MOV DS,AX MOV CX,9 MOV SI,OFFSET XDAT MOV AL,SIL2: CMP AL,SI+1 JC L1 MOV AL,SI+1L1: INC SI LOOP L2CALL DISPP MOV DX,OFFSET W MOV AH,9 INT 21H MOV AH,4CH INT 21H DISPP PROC NEAR PUSH DX PUSH CX MOV DL,AL MOV CL,4 ROL DL,CL AND DL,0FHCALL DISP1 MOV DL,AL AND DL,0FHCALL DISP1 POP CX POP DXRETDISPP ENDPDISP1 PROC NEAR PUSH AX PUSH BX PUSH CX PUSH DX

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論