Skip to main content

อาร์เรย์บูลีนคืออะไร?

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

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

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

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

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