⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4-24.txt

📁 基于汇编语言的几个微机接口程序
💻 TXT
字号:
4-24题


TITLE   8086 Code Template (for EXE file)

;       AUTHOR          emu8086
;       DATE            ?
;       VERSION         1.00
;       FILE            ?.ASM

; 8086 Code Template

; Directive to make EXE output:
       #MAKE_EXE#

DSEG    SEGMENT 'DATA'

; TODO: add your data here!!!!

BUF DB 89H,67H,59H,78H,90H,55H,72H,48H,88H,78H,77H,67H,79H,69H,73H,89H,66H,68H,62H,61H

PASS DB 0         
GOOD DB 0
BAD DB 0

NUM60 DB 60H
NUM80 DB 80H

CHAR1 DB 'BAD=',0AH,0DH,'$'
CHAR2 DB 'PASS=',0AH,0DH,'$'
CHAR3 DB 'GOOD=',0AH,0DH,'$'
CHAR DB 0AH,0DH,'$'


DSEG    ENDS

SSEG    SEGMENT STACK   'STACK'
        DW      100h    DUP(?)
SSEG    ENDS

CSEG    SEGMENT 'CODE'

;*******************************************

START   PROC    FAR

; Store return address to OS:
    PUSH    DS
    MOV     AX, 0
    PUSH    AX

; set segment registers:
    MOV     AX, DSEG
    MOV     DS, AX
    MOV     ES, AX
     
     
   MOV SI,OFFSET BUF  
   MOV AL,0
   MOV CX,20          
 
   LOP1:MOV BL,[SI]   
        CMP BL,NUM60  
        JB LOP2       
        CMP BL,NUM80  
        JBE LOP3
        MOV AL,1      
        ADD AL,GOOD
        DAA            
        MOV GOOD,AL
        INC SI         
        LOOP LOP1      
        JMP JUST       

  LOP2:              
         MOV AL,1     
         ADD AL,BAD
         DAA          
         MOV BAD,AL
         INC SI        
         LOOP LOP1     
         JMP JUST     
         
  LOP3:
         MOV AL,1      
         ADD AL,PASS
         DAA           
         MOV PASS,AL
         INC SI       
         LOOP LOP1     
         JMP JUST      
  
  ;将结果显示出来       
 
 JUST:               
       MOV DX,OFFSET CHAR1   
       MOV AH,09H
       INT 21H     
       
        MOV AL,BAD 
        MOV CL,4
        SHR AL,CL    
        ADD AL,30H   
        MOV DL,AL    
        MOV AH,02H
        INT 21H
      
        AND BAD,0FH  
        MOV AL,BAD
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H 
        
        MOV DX,OFFSET CHAR
        MOV AH,09H
        INT 21H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;  
       MOV DX,OFFSET CHAR2   
       MOV AH,09H
       INT 21H     
       
        MOV AL,PASS
        MOV CL,4
        SHR AL,CL
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H
      
        AND PASS,0FH
        MOV AL,PASS
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H 
        
        MOV DX,OFFSET CHAR
        MOV AH,09H
        INT 21H
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
       MOV DX,OFFSET CHAR3   
       MOV AH,09H
       INT 21H     
       
        MOV AL,GOOD
        MOV CL,4
        SHR AL,CL
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H
      
        AND GOOD,0FH
        MOV AL,GOOD
        ADD AL,30H
        MOV DL,AL
        MOV AH,02H
        INT 21H 

; TODO: add your code here!!!!





; return to operating system:
    RET
START   ENDP

;*******************************************

CSEG    ENDS 

        END    START    ; set entry point.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -