วันพฤหัสบดีที่ 20 กันยายน พ.ศ. 2555

กลุ่มคำสั่งเกี่ยวกับบิท

กลุ่มคำสั่งเกี่ยวกับบิท

         กลุ่มคำสั่งเกี่ยวบิทนี้ จะมีคำสั่งใช้อยู่ได้แก่ คำสั่งเซ็ท รีเซ็ท และคำสั่งย้ายข้อมูลแบบบิท คำสั่งเซ็ทเป็นการทำให้บิทใดบิทหนึ่งใน 8 บิท ของ Reg. ใน CPU หรือในหน่วยความจำตามตำแหน่งที่กำหนด ถูกระบุให้เป็น "1" และคำสั่ง รีเซ็ท จะถูกระบุให้เป็น "0" ส่วนคำสั่งการย้ายข้อมูลแบบบิท จะมีคำสั่งใช้อยู่ใด้แก่ คำสั่ง RLC, RRC, RL และ RR การย้ายข้อมูลแบบบิทจะกระทำ Reg. ของ CPU หรือข้อมูลในหน่วยความจำซึ่งบ่งด้วยค่าใน Reg. HL หรือ Reg IX, IY ดังมีการทำงานของกลุ่มคำสั่งเกี่ยวกับบิทดังนี้
 
การเซ็ต (SET BIT)
 
        ไมโครโปรเซสเซอร์ Z-80 มีคำสั่งเซ็ทบิท (SET BIT) อยู่ 80 คำสั่ง ซึ่งบิทในที่นี้หมายถึง บิทใดๆ ของไบท์ที่อยู่ในรีจิสเตอร์ต่างๆ หรือในหน่วยความจำโดยบิทขวาสุดเรียกบิท "0" และบิทซ้ายสุดเรียกว่า บิท 7
        คำสั่ง เซ็ทบิท จะเซ็ทบิทที่บ่งในคำสั่งให้เป็น "1" เสมอไม่ว่าเดิมบิทนั้นจะมีค่าเป็น "0" หรือ "1" ดังแสดงให้เห็นในรูป
 
แสดงคำสั่งการเซ็ทบิท (SET BIT )
การเคลียบิท
 
        ไมโครโปรเซสเซอร์ Z-80 มีคำสั่งเคลียบิท (CLEAR BIT) หรือ รีเซ็ทบิท (RESET BIT) อยู่ 80 คำสั่ง คำสั่งรีเซ็ทบิท จะทำหน้าที่รีเซ็ทบิทให้เป็น "0" ไม่ว่าเดิมบิทดังกล่าวจะมีค่า "0" หรือ "1" ดังแสดงให้เห็นในรูป
แสดงคำสั่งการ รีเซ็ทบิท (RESET BIT)
เทคนิคการโอนย้ายข้อมูลเป็นบิท

      การย้ายข้อมูลเป็นบิท ประกอบด้วยคำสั่งดังนี้

คำสั่ง RLC

        คำสั่ง RLC ย่อมาจาก Rotate Left Circular การทำงานตามคำสั่ง RLC r คือแต่ละบิทจะหมุนโดยเขียนทับบิทที่อยู่ทางซ้ายของตนเอง สำหรับ D7 จะเขียนทับ D0 และทับบิทในแฟล็กทดด้วย ดังแสดงในรูป
 
แสดงคำสั่ง RLC r
คำสั่ง RLC สามารถแสดงสถานะต่างๆ ของ FLAG ได้ดังนี้


 
ตัวอย่าง การทำคำสั่ง RLC ใน Reg A แสดงให้เห็นได้ดังรูป
 
แสดงคำสั่ง RLC A
คำสั่ง RRC

       คำสั่ง RRC r คือ แต่ละบิทจะถูกหมุนไปทางขวาหนึ่งตำแหน่ง สำหรับบิท D0 จะไปแทนที่บิท D7 แต่ละบิทในแฟล็กทด ดังแสดงในรูป


แสดงคำสั่ง RRC r
 คำสั่ง RRC r สามารถแสดงสถานะต่างๆ ของ FLAG ได้ดังนี้


ตัวอย่าง การทำคำสั่ง RRC ใน Reg. C แสดงให้เห็นได้ดังรูป


แสดงคำสั่ง RRC C
คำสั่ง RL r

          คำสั่ง RL r ย่อมาจาก Rotate Left การทำงานตามคำสั่ง RL r คือจะหมุนทุกบิทไปทางซ้ายผ่านแฟล็กทด ดังแสดงให้เห็นในรูป


แสดงคำสั่ง RL r
คำสั่ง RL r สามารถแสดงสถานะต่างๆ ของ FLAGE ได้ดังนี้


คำสั่ง RL r สามารถแสดงสถานะต่างๆ ของ FLAGE ได้ดังนี้


แสดงคำสั่ง RL A
คำสั่ง RR r

          คำสั่ง RR r ย่อมาจาก Rotate Right การทำงานตามคำสั่ง RR r คือจะหมุนทุกบิทไปทางซ้ายผ่านแฟล็กทด ดังแสดงให้เห็นในรูป


แสดงคำสั่ง RR r
คำสั่ง RR r สามารถแสดงสถานะต่างๆ ของ FLAGE ได้ดังนี้


ตัวอย่าง การทำคำสั่ง RR ใน Reg. E แสดงให้เห็นได้ดังรูป


แสดงคำสั่ง RR E
การเรียนรู้คำสั่งย้ายข้อมูลแบบบิท

       การเรียนรู้คำสั่งย้ายข้อมูลแบบบิท ตลอจนคำสั่งเซ็ทและรีเซ็ทบิท ซึ่งมีประโยชน์อย่างมาก เป็นต้นว่า ทำการตรวจสอบภาวะของบิทต่างๆ ของค่าไบท์ใน Reg. หรือหน่วยความจำ ตลอดจนสามารถนำไปใช้ในการทำเลขคณิต เช่นการคูณและการหารได้ด้วย
       คำสั่งที่กล่าวมานี้ ส่วนมากเป็นคำสั่งของ CPU เบอร์ Z-80 ที่นอกเหนือจากที่พบใน CPU เบอร์ 8080





ไม่มีความคิดเห็น:

แสดงความคิดเห็น