บทที่4
บทที่4.1
บทที่4.2
บทที่4.3
บทที่4.4
แบบทดสอบแอสเซมบี้ล
กระดานสนทนาห้องสนทนา ประวัติ หน้าหลัก  
บทที่ 4 การกำหนดค่าข้อมูลและคำสั่งพื้นฐาน
4.2 Define word
 
-DW (define word) จะกำหนดข้อมูลขนาดหนึ่งเวิร์ด ถ้าเป็นไมโครโพรเซสเซอร์เบอร์
8088/8086 และ 80286 ข้อมูลที่กำหนดจะมีขนาด 2 ไบต์หรือ 16 บิต
ตัวอย่างที่ 4.2
ORG 70H
DATA1 DW 954
DATA2 DW 101101010100B
DATA3 DW 253FH
ORG 78H
DATA4 DW 9,2,7,0CH,00100000B,5,’HI’
DATA5 DW 8 DUP (?)

เมื่อแปลออกมาเป็นภาษาเครื่องจะได้ดังต่อไปนี้
0070 ORG 70H
0070 30BA DATA1 DW 954
0072 0954 DATA2 DW 100101010100B
0074 253F DATA3 DW 253FH
0078 ORG78H
0078 0009 0002 0007 000C DATA4 DW 9,2,7,0CH,00100000B,5,’HI’
0020 0005 4849
0086 0008[ DATA5 DW 8 DUP (?) ???? ]

ในการใช้คำสั่ง DW เก็บสตริงที่มีตัวอักษรสองตัวจะเก็บเพียงค่าไบต์ต่ำของรหัส ASCII เท่านั้น ตัวอย่างอื่น ๆ ของการใช้คำสั่ง DW เป็นดังต่อไปนี้
word1 DW . . ; เก็บค่า 0020 ซึ่งที่ว่ามีรหัส ASCII เป็น 20
word2 DW . . ; เก็บค่า 4F4B
table DW 100 DUP(0) ; เก็บค่า 0000 จำนวน 100 เวิร์ด

- ในการใช้คำสั่ง DB หรือ DW เราสามารถใช้เครื่องหมายการกระทำทางคณิตศาสตร์ใส่เข้าไปได้ อย่างเช่นตัวอย่างต่อไปนี้ทุกคำสั่งจะเก็บข้อมูลที่มีค่าเป็น 0090H
DATA1 DW 144
DATA1 DW 12*12
DATA1 DW 10*15 – 7 + 1
ถ้าหากเขียนคำสั่งเป็น
char DB ‘X’
MOV AX,char

เมื่อคอมพิวเตอร์แปลคำสั่ง จะแจ้งข้อผิดพลาดออกมา เนื่องจากตัวแปร char เก็บตัวอักษร x ที่มีขนาด 1 ไบต์ แต่คำสั่ง MOV จะเป็นการนำค่าตัวแปร char มาใส่ในรีจิสเตอร์ที่มีขนาดเป็นเวิร์ด (AX) ดังนั้นในการใช้งานจะต้องประกาศตัวแปรต่าง ๆ ให้สอดคล้องกันด้วย