อักขระ |
รายละเอียด |
A ถึง Z a และ z |
ตัวอักษร |
0 ถึง 9 |
ตัวเลข |
? |
เครื่องหมายอัศเจรีย์ |
_ |
เครื่องหมายขีดล่าง |
@ |
สัญลักษณ์ @ |
$ |
สัญลักษณ์เงินดอลล่าร์ |
. |
เครื่องหมายจุด |
C:>\masm first; |
Microsoft (R) Macro Assembler Version 5.00 |
Copyright (C) Microsoft Corp 1981-1985, 1987. All rights reserved. |
|
51536 + 363616 Bytes symbol space free |
|
0 Warning Errors |
0 Severe Errors |
|
C:\> |
|
C:\>tasm first; |
Turbo Assembler Version 1.0 Copyright (c) 1988 by Borland International |
|
Assembling file: FIRST.ASM |
Error messages: None |
Warning messages: None |
Remaining memory: 405k |
|
C:\> |
|
|
Volume in drive C is NGUAN |
Volume Serial Number is 1CCE-8CCB |
Directory of C:\ |
|
FIRST ASM 577 06-23-94 11:26a |
FIRST OBJ 271 06-23-94 11:26a |
2 file(s) 742 bytes |
100,265,984 bytes free |
C:>link first; |
|
Microsoft (R) Segmented-Executable Linker Version 5.13 |
Copyright (C) Microsoft Corp 1984-1991. All rights reserved. |
|
C:\> |
C:>tlink first; |
Turbo Link Version 2.0 Copyright (c) 1987, 1988 Borland International |
|
C:\> |
C:\>dir first.* |
|
Volume in drive C is NGUAN |
Volume Serial Number is 1CCE-8CCB |
Directory of C:\ |
|
FIRST ASM 577 06-23-94 11:26a |
FIRST EXE 583 07-03-94 11:36a |
FIRST OBJ 271 06-23-94 11:26a |
3 file(s) 1,447 bytes |
C:\>first |
My first assembly language program |
|
C:\> |
C:\>debug first.exe ดีบักโปรแกรม FIRST.EXE |
|
-u ขอดูโปรแกรม |
|
202E:0010 B83020 MOV AX,2030 |
|
202E:0013 8ED8 MOV DS,AX |
|
202E:0015 BA0200 MOV DX,0002 |
|
202E:0018 B409 MOV AH,09 |
|
202E:001A CD21 INT 21 |
|
202E:001C B8004C MOV AX,4C00 |
|
202E:001F CD21 INT 21 |
|
202E:0021 004D79 ADD [DI+79],CL |
|
202E:0024 206669 AND [BP+69],AH |
|
202E:0027 7273 JB 009C |
|
202E:0029 7420 JZ 004B |
|
202E:002B 61 DB 61 |
|
202E:002C 7373 JNB 00A1 |
|
202E:002E 65 DB 65 |
|
202E:002F 6D DB 6D |
|
-r ขอดูรีจิสเตอร์ |
|
AX=0000 BX=0000 CX=0047 DX=0000 SP=0100 BP=0000 SI=0000 DI=0000 |
|
DS=201E ES=201E SS=2033 CS=202E IP=0010 NV UP EI PL NZ NA PO NC |
|
202E:0010 B83020 MOV AX,2030 |
|
-g สั่งทำงาน My first assembly language program Program terminated normally ผลลัพธ์พิมพ์ทางจอภาพ -q เลิกโปรแกรมดีบัก C:\> |
|
3.แอสเซมเบลอร์
ตำแหน่งในหน่วยความจำ |
0010 |
0011 |
0012 |
0013 |
0014 |
0015 |
เลขฐานสิบหก/ค่ารหัสแอสกี |
06 |
03 |
55 |
53 |
41 |
0D |
ความหมาย/ตัวอักขระ |
จำนวนสูงสุด |
จำนวนที่รับเข้ามา |
U |
S |
A |
รหัสการกดปุ่ม enter |
ตารางเปรียบเทียบการเขียนโปรแกรมแบบเต็มรูปแบบและการกำหนดเซกเมนต์อย่างง่าย |
|
; -------------------stack segment----------------------name1 segment db 64 dup(?)name1 ends;-------------------- data segment --------------------name2 segmentdata1 dw 2345hdata2 dw 98F4hresult dw ?name2 ends;-------------------- code segment --------------------name3 segmentmain proc far assume cs:name3,ds:name2,ss:name1 mov ax,name2 mov ds,ax …main endpname3 ends end main |
;-------------------------------------------------------------------- .model small .stack 64;-------------------------------------------------------------------- .datadata1 dw 2345hdata2 dw 98F4hresult dw ?;------------------------------------------------------------------- .codemain: mov ax,@data mov da,ax … end main |