. SUB AX,AX (2B C0), 0001. . -, - . END BEGIN, e PROC 0000. , . EXASM1.LST, PAGE p 132 . . MODE LPT1:132,6 . , . - ( ) , ( ). , , /N MASM, .. MASM/N. , . , , , . p , , .. a . , . , . , . , , : OBJ, LST CRF. IBM PC. 4 84 ------------------------------------------------------------ , c - . EXASM1.OBJ . , . , () . LINK ( ) . , DOS A, B. LINK C. LINK Return. , ( MASM), : Object Modules [.OBJ]: B:EXASM1 EXASM1.OBJ Run file [EXASM1.EXE]: B: EXASM1.EXE List file [NUL.MAP]: CON EXASM1.MAP Libraries [.LIB]: [Return] - , OBJ . - (), ( A:EXASM1.EXE). B: , . ( ) . , LINK y - NUL.MAP (.. MAP ). MAP- , LINK. . CON , , . . MAP- : Start Stop Length Name 00000H 00015H 0016H CODESG 00020H 0007FH 0060H STACKSG IBM PC. 4 85 - Return, LINK y. DOS. y . LINK. 4 p LINK. ------------------------------------------------------------ (-!) . . 4.2 , EXASM1. EXE- B, : B:EXASM1.EXE B:EXASM1 DOS , EXE ( COM), . , DEBUG. DEBUG B:EXASM1.EXE DOS DEBUG, , , EXE-. (-) . D SS:0 12- STACKSEG. D CS:0 : 1E2BC050B823010525008BD803 ... , 0123 0025 2301 2500 . . () . IBM PC. 4 86 R p T (). PUSH - DS . . RET, Q (Quit - ) . dir, : DIR B:EXASM1.* ------------------------------------------------------------ ------------------------------------------------------------ . 4.2. , . : EXASM1.BAK ( EXASM1.ASM EDLIN), EXASM1.ASM, EXASM1.OBJ, EXASM1.LST, EXASM1.EXE EXASM1.CRF. , . , . DOS CHKDSK. OBJ-, CRF-, BAK- LST- ERASE ( DEL): ERASE B:EXASM1.OBJ, ... () ASM- EXE- . . c. ------------------------------------------------------------ , . 4.1, , . , -. 2 (.2.3) , . . 4.3 , . . IBM PC. 4 87 DW (Define Word - c), 32 , (?). 32 , "" - - . 'STACKSEG' p. 3.2 DEBUG. : 32 . , - . . 4.3 DATASG, 0000. DW. FLDA ( ), 250, . 00FA (. ). FLDB 125, p . 007D. - FA00 7D00 , c DEBUG. ------------------------------------------------------------ ------------------------------------------------------------ . 4.3. . FLDC , (?). CODESG - , . -, ASSUME DATASG DS. ES, . -, PUSH, SUB PUSH, - , , : 0004 B8 ---- R MOV AX,DATASG 0007 8E D8 MOV DS,AX MOV DATASG AX. , - DATASG. : B8 ---- R , a DATASG; . IBM PC. 4 88 p , c R; . MOV AX DS. , ASSUME, DS , , DS DATASG. . -, DS, , MOV DS,DATASG ? , c DS. , DS . -, DS, SS CS ? , SS CS , DS , ES, . , c . . . , , , , . , , . 4.3, . DEBUG , , . ------------------------------------------------------------ (CRF), , . , , o B:, , B: cross-reference [NUL.CRF]:B: [Return] IBM PC. 4 89 CRF- p . . CREF. : Cref filename [.CRF]: List filename [cross-ref.REF]: CRF-, .. B:EXASM1. . CRF EXASM1.REF B. DOS PRINT. 4 CREF. ------------------------------------------------------------ ------------------------------------------------------------ . 4.4. . 4.4 , . 4.3. c p , . p. n# LST-, . , , c . , CODESG 17 19 32. ------------------------------------------------------------ OBJ-, - OBJ- EXE-. (M)ASM, LINK CREF Return. . CREF . . CHKDSK . , . ------------------------------------------------------------ IBM PC. 4 90 4.1. MASM TEMPY.ASM LST, OBJ CRF, , B. 4.2. TEMPY ( 4.1) ) DEBUG, ) DOS. 4.3. : ) file.BAK, ) file.ASM, ) file.LST, ) file.CRF, ) file.OBJ, ) file.EXE, ) file.MAP. 4.4. DS, , - DATSEG. 4.5. : - . 30 ( ) AL; - AL ( SHL); - . 18 ( ) BL; - AL BL ( MUL BL). RET. . ( ) . . DEBUG, , () . 4.6. 4.5 : - ( DB) FLDA, . 28, FLDB, . 14; - ( DW) FLDC, ; - FLDA AL ; - AL FLDB (MUL FLDB); - AX FLDC. . , DEBUG. IBM PC. 5 104  5.  ------------------------------------------------------------ : . ------------------------------------------------------------ , -. : , DB , DW o . , . , .. , : MOV AL,20H 20 . o , , , , c. ------------------------------------------------------------ : -, , -, c. : [] Dn ( ), , . " " 3. : DB (), DW (), DD ( ), DQ ( ) DT ( ). , : FLD1 DB 25 , IBM PC. 5 105 FLDB DB ? , : FLD3 DB 11, 12, 13, 14, 15, 16, ... c . FLD3 , 11, FLD3+1 - , 12. (FLD3 FLD3+0). MOV AL,FLD3+3 AL 14 (. 0E). : [] Dn - DUP () ... : DW 10 DUP(?) ; DB 5 DUP(14) ; , .14 DB 3 DUP(4 DUP(8)); 8 (8888), , p . . , , , . o , , 'PC' - "PC". ASCII. DB, p . , DB . . 5.1 . ------------------------------------------------------------ ------------------------------------------------------------ . 5.1. . IBM PC. 5 106 a . . - . . . 0 9 D, , , 125 125D. , , . . , 125 . 7D. . . . 0 F H. , , . 0 9. , 2EH 0FFFH, 2E FF0F ( ). . 0 1 B. AND, OR, XOR TEST. 12, . C 1100B : . 0C 0000 1100 , . . 0 7 Q O, , 253Q. . . ASM. , , , , DB '12', ASCII . 3132, , o DB 12, . 0C. . 5.1 . , (). (DB) ------------------------------------------------------------ IBM PC. 5 107 , , DB ( ). p DB , (. FLD2DB FLD7DB . 5.1). , FLD2DB 'Personal Computer'. ASCII . . 20 . DB . . p. . 7F, "" 80 FF . +127 -128. . 5.1 FLD3DB, FLD4DB, FLD5DB FLD8DB. FLD6DB , . (DW) ------------------------------------------------------------ DW , ( ). DW , , , , 'PC' 'CP'. DW . DW . . . . 7FFF; "" 8000 FFFF . +32767 -32768. . 5.1 FLD1DW FLD2DW . FLD3DW - FLD7DB. 0021 (R ). , , FLD7DB 0021. FLD4DW . , o ( ). DW, DD DQ . , . 12345 .3039, 3930. (DD) ------------------------------------------------------------ IBM PC. 5 108 DD , c ( ). , ( . ). . 7FFFFFFF; "" 80000000 FFFFFFFF . +2147483647 -2147483648. . 5.1 FLD3DD . FLD4DD , FLD2DB. FLD5DD . DD . , . 12345 . 00003039, o 39300000. DD . , FLD2DD . (DQ) ------------------------------------------------------------ DQ , ( ). , 16 .. . - 15 F. , , . 1 15 : 1152921504606846976 . 5.1 FLD2DQ FLD3DQ . DQ . , , - DD DW. DQ a DD DW. (DT) ------------------------------------------------------------ DT , . " " (. .13). DT , ; a. IBM PC. 5 109 . 5.1 DT . .5.1 . X c , LINK MAP : "Warning: No STACK Segment", LINK "There were 1 errors detected" ( 1 ). DEBUG , . 5.2. , , , "Personal Computer". ------------------------------------------------------------ . 2.1 2 . MOV AX,0123H . 0123 AX. B82301, B8 " AX", a . : , - . ------------------------------------------------------------ ------------------------------------------------------------ . 5.2. . , o c MOV, , : AMT1 DW 0123H : MOV AX,AMT1 . , , AL : MOV AL,0123H () , , , ADD AX,25H ( ) , 0025 2500. IBM PC. 5 110 , p, 0123H; , , 291 ( .0123); , , 100100011 ( . 0123). , : : MOV, CMP. : ADC, ADD, SBB, SUB. : RCL, RCR, ROL, ROR, SHL, SAR, SHR. : AND, OR, TEST, XOR. . 5.3 . , . , . , , (. .7) (. .11). ------------------------------------------------------------ ------------------------------------------------------------ . 5.3. . EQU ------------------------------------------------------------ EQU , , . , EQU: TIMES EQU 10 , TIMES, . , - TIMES 10. , FIELDA DB TIMES DUP (?) FIELDA DB 10 DUP (?) , EQU, , : COUNTR EQU 05 IBM PC. 5 111 ... MOV CX,COUNTR COUNTR MOV 05, c , MOV CX,05 ; 05 EQU , , COUNTR. , EQU. , EQU , . EQU : 1. TP EQU TOTALPAY 2. MPY EQU MUL , p TOTALPAY. , TP, TOTALPAY. MPY MUL. ------------------------------------------------------------ . , EMPWAGE. DB, (-). . . , , AX 25 . 25: ADD AX,25 ; 25 ADD AX,25H ; 37 , DW, DD DQ . IBM PC. 5 112 DB (AL, AH, BL ..) DW (AX, BX, CX ..). , DD DQ . : - (AL, BH), - (AX, BX). ------------------------------------------------------------ 5.1. , : ) DW, ) DD, ) DT, ) DB, ) DQ? 5.2. TITLE1, RGB Electronics. 5.3. FLDA FLDE: a) , . 115; b) , . 25; c) , ; d) , 25; e) DW, 16, 19, 20, 27, 30. 5.4. . ) DB '26' ) DB 26. 5.5. . ) DB 26H, ) DW 2645H, ) DD 25733AH, ) DQ 25733AH. 5.6. : ) 320 AX; ) FLDB ; ) . 40 BX; ) . 40 CX; ) FLDB ; ) CH . 5.7. 5.2, 5.3 5.6. . . DEBUG. LST- (), IBM PC. 5 113 . MODE LPT1:132,6 . IBM PC. 6 123  6. COM- ------------------------------------------------------------ COM- : COM- COM-. ------------------------------------------------------------ , EXE-. LINK EXE-, () p 512 . ( 22 ). COM-. COM- COMMAND.COM. EXE2BIN.COM DOS EXE- COM-. BIN () , " EXE in (EXE-to-BIN)". in- COM-. EXE COM- ------------------------------------------------------------ , EXE2BIN EXE- COM-, c , EXE-