Download - § 3.3.1 汇编语言源程序

Transcript
  • 3.3.1

  • .ASM .OBJ .EXE

  • SEGMENT ENDS

    SEGMENT ENDS

    SEGMENT ENDS

    SEGMENT ENDS

  • CPUCPU

  • [] [] [][] [ ]

  • [] [] [ ]

  • ,31,,(,,)

  • CPU

    ,,

  • AABCDASCII41H42H43H44H

  • +-*/MOD ANDORNOTXORMOV AL8 AND 4 MOV AL8+4-1

  • 0FFFFHEQNELTGTLEGE

  • OFFSET SEG TYPE LENGTH SIZE

  • MOV AXSEG DATA MOV DSAX MOV BXOFFSET DATA LEA BXDATA

  • BUFFER BUFFER DW 200 DUP(0) TYPE BUFFER 2 LENGTH BUFFER200 SIZE BUFFER400

  • PTR MOV BYTE PTR[BX]12H

  • [ ]

    [ ]

  • 3.3.2

  • DB DW DD 4DQ 48DT 10

  • DATA1 DB 11H22H33H44HDATA2 DW 11H22H3344HDATA3 DD 11H*222H33445566H

  • DB DATA1 DB ABCD66HABCD41H42H43H44H66H

  • [] n DUP DW 20 DUP0 DB 3 DUP22H11H

  • MEM1 DB 34HA DW 20 DUP40

  • EQU CONSTANTEQU100 VAR EQU 30H+99HEQU

  • SEGMENT [] [] []

    ENDS

  • PARA 16 1BYTE WORDPAGE 256 1

  • NONE PUBLIC LINKCOMMON STACK AT MEMORY

  • DATA SEGMENTMEM1 DB 11H22HDATA ENDS

  • ASSUME []

  • END []

  • DSEG SEGMENTDATA1 DB 12DATA2 DW 1234HDSEG ENDSESEG SEGMENT DB 20 DUPESEG ENDSSSEG SEGMENT STACK STACK Dw 200 DUPSSEG ENDS

  • CSEG SEGMENT ASSUME CSCSEGDSDSEG ESESEGSSSSEG STARTMOV AXDSEG MOV DSAX MOV AXESEG MOV ESAX MOV AXSSEG MOV SSAX CSEG ENDS END START

  • PROC [ NEAR / FAR ] RET ENDPP166

  • -------- MACRO ENDMP167

  • ORG ------- ORG ORG 2000H

  • NAME------- NAME

    TITLE------- TITLE P169

  • 4.3 DOS BIOS

  • DOS 21HC

  • DOS

  • DOS MOV AH INT 21H

  • 1. MOV AH01 INT 21HAL

  • GET_KEY: MOVAH,1 INT21H CMPAL,Y JZ YES CMPAL,N JZ NO JNZGET_KEY YES: jmp exit NO: exit

  • 2. AH OAHDSDX INT 21H

  • 0DHN1N2

  • DAT1 DB 2020 DUP

    LEA DXDAT1 MOV AH0AH INT 21H

  • 14H 20

  • 3. AH O2HDL INT 21H

  • MOVAH02 MOVDL41H INT21HA

  • 4. AH O9HDSDX INT 21H

  • $,ASCII

  • DATA SEGMENTMESS1 DB Input String: 0DH0AH,$DATA ENDSCODE SEGMENT MOVAH09MOVDXOFFSET MESS1INT21H

  • 4.4

  • D:\masm>EDIT D:\masm>MASM D:\masm>LINK D:\masm>TD