ภาษาส่วนใหญ่จัดทำโดยผู้ประกอบการตามตำแหน่งและสัญลักษณ์การทำงานที่ใช้กันอย่างแพร่หลายในภาษาเช่น C, C ++ และมีตัวอย่างแอปพลิเคชันไม่มากนักในสคริปต์เช่น JS และ AS จะได้ผลลัพธ์ที่ดี
มาพูดคุยเกี่ยวกับการใช้บิตการดำเนินงานใน JS (รวมถึงภาษาอื่น ๆ ) ตามความรู้ความเข้าใจของคุณเอง
จำนวนการทำงานของตำแหน่งคือการพิจารณาจำนวนการดำเนินงานเป็นชุดของตำแหน่งที่แยกต่างหากไม่ใช่ค่าดิจิตอล ก่อนหน้านั้นฉันต้องพูดถึงว่า "บิต" คืออะไร:
จำนวนมากหรือตัวละครถูกเก็บไว้ในหน่วยความจำเป็น 0 และ 1 ลำดับ และตอนนี้หน่วยเก็บข้อมูลจะกลายเป็น 0 0 0 0 0 0 1 0 0 0. มันคือทศนิยม 4 ซึ่งเป็นหลักการของการทำงานของสัญลักษณ์การทำงาน
มี 6 ตามผู้ดำเนินการ
& กดตำแหน่งและ
| กดหรือ
^ขึ้นอยู่กับตำแหน่งหรือ
~ เอาตรงข้าม
>> กะขวา
<< กะ
1 & Operator
& เป็นตัวดำเนินการคู่
ผลลัพธ์ของ 1 & 3 คือ 1
มาดูกันว่ามันทำงานอย่างไร:
1 การเป็นตัวแทนไบนารีคือ 0 0 0 0 0 0 0 1
ไบนารีของ 3 หมายถึง 0 0 0 0 0 0 0 0 1 1
ผลลัพธ์ที่ได้รับตามกฎของ & คือ 0 0 0 0 0 0 0 0 0 1 การเป็นตัวแทนทศนิยมคือ 1
ตราบใดที่ผลลัพธ์ของ 0 & การดำเนินการคือ 0 ดังนั้นคุณสามารถใช้บิตที่ไม่จำเป็นของตัวแปรที่จะตั้งค่าเป็น 0 4 บิตกำจัด 4 -bit สูง & 0x0f (การใช้ชีวิต: 0x0f เป็นตัวแทน hexadecimal ไบนารีคือ 0 0 0 0 1 1 1)
2 |
ความแตกต่างระหว่าง | และ & คือถ้าการดำเนินการใด ๆ ในบิตที่เกี่ยวข้องคือ 1 ผลลัพธ์คือ 1
1 | 3 ผลลัพธ์คือ 3
3 ^ ตัวดำเนินการ
^สัญลักษณ์การดำเนินงานคล้ายกับ | แต่สิ่งหนึ่งคือถ้าตำแหน่งการทำงานทั้งสองเป็น 1 ผลลัพธ์คือ 0
0 1 0 0 0 0 0 0 1
0 1 0 1 1 0 1 0
สร้าง 0 0 0 1 1 0 1 1 1
4 ~ ตัวดำเนินการ
-
5 ผู้ดำเนินการกระจัด
<< ย้ายไปทางซ้าย >> ย้ายไปทางขวายิ่งตำแหน่งจะหายไปและตำแหน่งที่ว่างเปล่าจะทำขึ้น 0
ตัวอย่างเช่น
0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 (สิบโลหะ 12)
ย้ายไปทางขวาคือสองบิต
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 (Twita 4096)
นี่คือแอปพลิเคชันเฉพาะบางอย่าง
ดังที่ได้กล่าวไว้ก่อนหน้านี้ 2 เลื่อนไปข้างหน้า 1 บิตไปยัง 4 เพื่อใช้คุณสมบัตินี้สามารถใช้สำหรับการคูณการคูณ
2 << 1 = 4
3 << 1 = 6
4 << 1 = 8
ในทำนองเดียวกัน >> คุณสามารถจ่ายเงินปันผลได้
ทศนิยมใด ๆ >> 0 สามารถนำขึ้นมาได้
เช่น 3.14159 >> 0 = 3;
^The Operation Service มีคุณสมบัติเวทย์มนตร์
หากรหัสต่อไปนี้
คัดลอกรหัสรหัสดังนี้:
<script>
var n1 = 3;
var n2 = 4;
n1 ^= n2;
n2 ^= n1;
n1 ^= n2;
</script>