กลับไปหน้าบทความ

อ่าน 1 นาที

รหัสที่อยู่สามที่อยู่

ใน วิทยาการคอมพิวเตอร์ รหัส สามแอดเดรส [ 1 ] (มักย่อเป็น TAC หรือ 3AC) เป็น รหัสระดับกลาง ที่ใช้โดย คอมไพเลอร์ที่ปรับให้เหมาะสม เพื่อช่วยในการใช้งาน การแปลงที่ปรับปรุงโค้ด คำ สั่ง...

รหัสที่อยู่สามที่อยู่

ในวิทยาการคอมพิวเตอร์รหัสสามแอดเดรส[ 1 ] (มักย่อเป็น TAC หรือ 3AC) เป็นรหัสระดับกลางที่ใช้โดยคอมไพเลอร์ที่ปรับให้เหมาะสมเพื่อช่วยในการใช้งานการแปลงที่ปรับปรุงโค้ด คำสั่ง TAC แต่ละคำสั่งมีตัวถูกดำเนินการอย่างมากที่สุดสามตัว และโดยทั่วไปจะเป็นการรวมกันของการกำหนดค่าและตัวดำเนินการไบนารี ตัวอย่างเช่นt1 := t2 + t3ชื่อนี้มาจากการใช้ตัวถูกดำเนินการสามตัวในคำสั่งเหล่านี้ แม้ว่าอาจมีคำสั่งที่มีตัวถูกดำเนินการน้อยกว่านั้นก็ตาม

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

รูปแบบมาตรฐาน A (ANF) เป็นการปรับปรุงรหัสสามแอดเดรสให้ดียิ่งขึ้น

ตัวอย่าง

ในโค้ดแบบสามแอดเดรส โค้ดนี้จะถูกแบ่งออกเป็นคำสั่งย่อยหลายคำสั่ง คำสั่งเหล่านี้สามารถแปลงเป็น ภาษาแอสเซมบลีได้ง่ายกว่านอกจากนี้ยังง่ายต่อการตรวจจับนิพจน์ย่อยที่เหมือนกันเพื่อลดความยาวของโค้ด ในตัวอย่างต่อไปนี้ การคำนวณหนึ่งครั้งประกอบด้วยการคำนวณย่อยหลายครั้ง:

โค้ดแบบสามแอดเดรสอาจมีการกระโดดแบบมีเงื่อนไขและไม่มีเงื่อนไข รวมถึงวิธีการเข้าถึงหน่วยความจำ นอกจากนี้ยังอาจมีวิธีการเรียกฟังก์ชัน หรืออาจลดทอนวิธีการเหล่านี้ให้เหลือเพียงการกระโดด ในลักษณะนี้ โค้ดแบบสามแอดเดรสจึงมีประโยชน์ในการวิเคราะห์การไหลของโปรแกรม ในตัวอย่างที่คล้ายกับภาษาซีต่อไปนี้ ลูปจะเก็บค่ากำลังสองของตัวเลขระหว่าง 0 ถึง 9:

ดูเพิ่มเติม

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Three-address_code&oldid=1290150129 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ รหัสที่อยู่สามที่อยู่

ใน วิทยาการคอมพิวเตอร์ รหัส สามแอดเดรส [ 1 ] (มักย่อเป็น TAC หรือ 3AC) เป็น รหัสระดับกลาง ที่ใช้โดย คอมไพเลอร์ที่ปรับให้เหมาะสม เพื่อช่วยในการใช้งาน การแปลงที่ปรับปรุงโค้ด คำ สั่ง...

ตัวอย่าง

ในโค้ดแบบสามแอดเดรส โค้ดนี้จะถูกแบ่งออกเป็นคำสั่งย่อยหลายคำสั่ง คำสั่งเหล่านี้สามารถแปลงเป็น ภาษาแอสเซมบลี ได้ง่ายกว่านอกจากนี้ยังง่ายต่อการตรวจจับ นิพจน์ย่อยที่เหมือนกัน เพื่อลดความยาวของโค้ด ในตัวอย่างต่อไปนี้...

ดูเพิ่มเติม

ภาษาระดับกลาง คอมพิวเตอร์ชุดคำสั่งลดรูป แบบฟอร์มการมอบหมายงานเดี่ยวแบบคงที่ (SSA) ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=Three-address_code&oldid=1290150129 "