4
4.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 BYTR PTR[BX]12H
[ ]
[ ]
4.2
DB DW DD 4DQ 48DT 10
DATA1 DB 11H22H33H44HDATA2 DW 11H22H3344HDATA3 DD 11H*222H33445566H
DB DATA1 DB ABCD66HABCD41H42H43H44H66H
[] n DUP BW 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 SEGMENT PUBLIC CODEMEM1 DB 11H22HDATA ENDS
ASSUME []
END []
DSEG SEGMENTDATA1 DB 12DATA2 DW 1234HDSEG ENDSESEG SEGMENT DB 20 DUPESEG ENDSSSEG SEGMENT STACK STACK DB 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: NO:
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