ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
CS344-321 Assembly Language Programming
Period 20
2
Data Transfer Instructions
mov destination,source ขนาดของข้อมูลต้องตรงกัน คือ 8 บิตกับ 8 บิต และ 16 บิตกับ 16 บิต เช่น mov ax,bx mov al,temp เมื่อ temp db ? เป็นต้น
3
กรณีของ memory ถ้ามีความจำเป็นต้องใช้ข้อมูลที่มีขนาดไม่ตรงกับที่ define เช่น
mov al,x เมื่อ x dw ? ไม่สามารถทำได้ แต่ถ้าต้องการข้อมูลตรงตำแหน่ง x ขนาดหนึ่งไบต์จริงๆ สามารถทำได้ สองลักษณะ คือ mov al,byte ptr x เมื่อ x dw ? หรือ mov al,xb เมื่อ xb label byte x dw ?
4
อีกตัวอย่างหนึ่ง เช่น
mov al,byte ptr y mov ah,byte ptr y+1 เมื่อ y dw ?
5
push pop การ push เพื่อเก็บค่าชั่วคราว และ การ pop เพื่อต้องการค่าเดิม ให้ทำสลับกัน ดังเช่น push ax push bx push cx … pop cx pop bx pop ax
6
xchg xlat in out lea lds les
7
lahf sahf pushf popf flags มีบิตต่างๆ ดังนี้ OF DF IF TF SF ZF AF PF CF ต้องการเปลี่ยนแปลงที่บิต สามารถใช้คำสั่ง lahf กับ sahf ได้ ถ้าต้องการเปลี่ยนแปลงที่ บิตใดๆ สามารถใช้คำสั่ง pushf กับ popf ดังเช่น
8
ต้องการเปลี่ยน OF ให้เป็น 0 โดยที่บิตอื่นๆ ไม่เปลี่ยนแปลง ทำดังนี้
pushf pop ax and ax, b หรือ and ax,0F7FFH push ax popf หมายเหตุ ถ้าต้องการเปลี่ยนที่บิตใดให้เป็น 0 ทำได้โดยการ and ด้วย 0 ที่ตำแหน่งนั้น ส่วนที่บิตอื่นเป็น 1 ถ้าต้องการเปลี่ยนที่บิตใดให้เป็น 1 ทำได้โดยการ or ด้วย 1 ที่ตำแหน่งนั้น ส่วนที่บิตอื่นเป็น 0
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.