การดำเนินการทางลอจิคัลพื้นฐาน (และ, หรือ, xor, ไม่ใช่) ตัวอย่างของการแก้ปัญหา XOR - เฉพาะ OR คำสั่ง xor แบบลอจิคัลประเมินว่าเป็นจริงหาก

ระบุด้วยอุปมาอุปไมยว่า "อย่างใดอย่างหนึ่ง... หรือ..." ข้อความประสม "อย่างใดอย่างหนึ่งหรือ B" จะเป็นจริงเมื่อ A หรือ B เป็นจริง แต่ไม่ใช่ทั้งสองอย่าง มิฉะนั้นคำสั่งผสมจะเป็นเท็จ

เหล่านั้น. ผลลัพธ์เป็นจริง (เท่ากับ 1) ถ้า A ไม่เท่ากับ B (A≠B)

การดำเนินการนี้มักจะถูกเปรียบเทียบกับการแยกเนื่องจากมีคุณสมบัติคล้ายกันมากและทั้งสองมีความคล้ายคลึงกับคำเชื่อม "หรือ" ในคำพูดในชีวิตประจำวัน เปรียบเทียบกฎสำหรับการดำเนินการเหล่านี้:

1. จริงถ้าเป็นจริง หรือ , หรือทั้งสองอย่างพร้อมกัน

2. จริงถ้าจริง หรือ, แต่ ไม่ทั้งสองอย่างพร้อมกัน

การดำเนินการ ไม่รวมตัวเลือกหลัง (“ทั้งสองอย่างพร้อมกัน”) และด้วยเหตุนี้จึงเรียกว่าพิเศษ “หรือ” ความคลุมเครือภาษาธรรมชาติคือคำเชื่อม “หรือ” สามารถใช้ได้ในทั้งสองกรณี

5. นัย (ผลเชิงตรรกะ)เกิดจากการรวมสองประโยคให้เป็นหนึ่งเดียวโดยใช้อุปมาอุปไมย "ถ้า ... แล้ว ... "

การบันทึก: A®B

คำสั่งผสมที่เกิดจากการดำเนินการโดยนัยจะเป็นเท็จ ถ้าหากข้อสรุปที่เป็นเท็จ (คำสั่งที่สอง) ตามมาจากหลักฐานที่แท้จริง (คำสั่งแรก)

เหล่านั้น. ถ้า 1 หมายถึง 0 ผลลัพธ์จะเป็น 0 ในกรณีอื่นๆ – 1

เช่น ข้อความที่ว่า “ถ้าตัวเลขหารด้วย 10 ลงตัวแล้วจึงหารด้วย 5 ลงตัว” เป็นจริงเพราะว่า ทั้งข้อความที่หนึ่งและที่สองเป็นจริง

ข้อความที่ว่า “ถ้าตัวเลขหารด้วย 10 ลงตัวแล้วหารด้วย 3 ลงตัว” เป็นเท็จ เพราะ ข้อสรุปที่เป็นเท็จมาจากหลักฐานที่แท้จริง

“รูปสี่เหลี่ยมนี้เป็นสี่เหลี่ยมจัตุรัส” () และ “วงกลมสามารถถูกจำกัดรอบรูปสี่เหลี่ยมขนมเปียกปูนที่กำหนดได้” (ใน- จากนั้นคำสั่งผสมอ่านว่า “ถ้ารูปสี่เหลี่ยมที่กำหนดเป็นรูปสี่เหลี่ยมจัตุรัส ก็สามารถวาดวงกลมล้อมรอบรูปนั้นได้”

ในคำพูดธรรมดามีความเกี่ยวพัน “ถ้า...ก็แล้ว”อธิบายความสัมพันธ์ระหว่างเหตุและผลระหว่างข้อความต่างๆ แต่ในการดำเนินการเชิงตรรกะ ความหมายของข้อความจะไม่ถูกนำมาพิจารณา พิจารณาเฉพาะความจริงหรือเท็จเท่านั้น ดังนั้นจึงไม่ควรรู้สึกอับอายกับ "ความไร้ความหมาย" ของความหมายโดยนัยที่เกิดจากข้อความที่ไม่เกี่ยวข้องกับเนื้อหาโดยสิ้นเชิง ตัวอย่างเช่นเช่นนี้: “ถ้าประธานาธิบดีแห่งสหรัฐอเมริกาเป็นพรรคเดโมแครต แอฟริกาก็จะมียีราฟ” “ถ้าแตงโมเป็นเบอร์รี่ ก็จะมีน้ำมันอยู่ในปั๊มน้ำมัน”

6. ความเท่าเทียมกัน (ความเท่าเทียมกันเชิงตรรกะ ~ º Û) เกิดขึ้นจากการรวมสองประโยคให้เป็นหนึ่งเดียวโดยใช้อุปมาอุปไมย "...ถ้าและถ้าเท่านั้น..."

คำสั่งผสมที่เกิดจากการดำเนินการสมมูลจะเป็นจริงก็ต่อเมื่อทั้งสองประโยคเป็นเท็จหรือจริงพร้อมกันเท่านั้น

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


ตารางความจริง

สำหรับแต่ละคำสั่งผสม (ฟังก์ชันเชิงตรรกะ) คุณสามารถสร้างตารางความจริงที่กำหนดความจริงหรือความเท็จสำหรับการรวมค่าเริ่มต้นของข้อความธรรมดาที่เป็นไปได้ทั้งหมด

ตารางความจริงคือการแสดงแบบตารางของวงจรตรรกะ (การทำงาน) ที่แสดงรายการชุดค่าความจริงที่เป็นไปได้ทั้งหมดของสัญญาณอินพุต (ตัวถูกดำเนินการ) พร้อมกับค่าความจริงของสัญญาณเอาต์พุต (ผลลัพธ์ของการดำเนินการ) สำหรับแต่ละชุดค่าผสมเหล่านี้

ให้เราสะท้อนการดำเนินการเชิงตรรกะที่กล่าวถึงข้างต้นในตารางความจริง:

ในพีชคณิตเชิงประพจน์ ฟังก์ชันเชิงตรรกะทั้งหมดโดยการแปลงเชิงตรรกะสามารถลดลงเหลือเพียง 3 ฟังก์ชันพื้นฐาน ได้แก่ การบวกเชิงตรรกะ การคูณเชิงตรรกะ และการปฏิเสธเชิงตรรกะ

ให้เราพิสูจน์ว่าการดำเนินการโดยนัย A®B เทียบเท่ากับนิพจน์เชิงตรรกะ:

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

ผู้รับ XOR แหล่งที่มา

คำสั่ง XOR จะรีเซ็ต CF และ OF เสมอ และ (ขึ้นอยู่กับผลลัพธ์) จะเปลี่ยนแฟล็ก SF, ZF และ PF ค่าของธง AF อาจเป็นอะไรก็ได้ - ไม่ได้ขึ้นอยู่กับผลลัพธ์ของการดำเนินการ

ผู้รับอาจเป็นหนึ่งในสิ่งต่อไปนี้:

  • พื้นที่หน่วยความจำ (MEM)

แหล่งที่มาอาจเป็นอย่างใดอย่างหนึ่งต่อไปนี้:

  • พื้นที่หน่วยความจำ (MEM)
  • ทะเบียนวัตถุประสงค์ทั่วไป (REG)
  • ค่าทันที - ค่าคงที่ (IMM)

ภายใต้ข้อจำกัดที่อธิบายไว้ข้างต้น ชุดค่าผสมของผู้รับ-แหล่งที่มาอาจเป็นดังนี้:

REG, MEM MEM, REG REG, REG MEM, IMM REG, IMM

การดำเนินการพิเศษหรือ

เมื่อดำเนินการพิเศษหรือการดำเนินการ ค่าผลลัพธ์จะเป็น 1 หากบิตที่เปรียบเทียบแตกต่างกัน (ไม่เท่ากัน) หากบิตที่เปรียบเทียบมีค่าเท่ากัน ผลลัพธ์จะเป็น 0

นั่นคือสาเหตุที่การดำเนินการนี้เรียกว่าพิเศษ โดยไม่รวมบิตที่เหมือนกันจากการเปรียบเทียบ และดำเนินการกับบิตที่ไม่เท่ากัน

แต่เนื่องจากคู่ของบิตที่ไม่เท่ากันคือ 0 และ 1 การดำเนินการแบบลอจิคัล OR จะให้ผลลัพธ์เป็น 1

ตารางพิเศษหรือความจริง

ตารางความจริง XOR แสดงไว้ด้านล่าง:

0 เอ็กซ์โอ 0 = 0 0 เอ็กซ์โออาร์ 1 = 1 1 เอ็กซ์ออร์ 0 = 1 1 แฮคเกอร์ 1 = 0

คุณสมบัติของการดำเนินการ XOR

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

0 แฮคเกอร์ 0 = 0 เอ็กซ์โออาร์ 0 = 0 0 แฮคเกอร์ 1 = 1 เอ็กซ์ออร์ 1 = 0 1 แฮคเกอร์ 0 = 1 เอ็กซ์ออร์ 0 = 1 1 แฮคเกอร์ 1 = 0 เอ็กซ์โออาร์ 1 = 1

คุณสมบัตินี้สามารถนำไปใช้ได้ เช่น สำหรับการเข้ารหัสข้อมูลอย่างง่าย (เพิ่มเติมในเวลาอื่น)

การตรวจสอบแฟล็กพาริตีหลังการดำเนินการ XOR

คำสั่ง XOR ทำงานร่วมกับการดำเนินการ 8-, 16- และ 32 บิต

บางครั้ง หลังจากดำเนินการแล้ว จำเป็นต้องตรวจสอบแฟล็กพาริตี PF เพื่อดูว่ามีบิตของหน่วยจำนวนเท่าใด (คู่หรือคี่) ไบต์ต่ำผลลัพธ์ (นี่จำเป็นไม่เพียงแต่เมื่อดำเนินการ XOR เท่านั้น แต่ยังรวมถึงการดำเนินการทางคณิตศาสตร์และตรรกะอื่น ๆ ด้วย)

หากมีการตั้งค่าสถานะพาริตี ผลลัพธ์จะเป็นเลขคู่ของหนึ่งบิต มิฉะนั้นธงจะถูกรีเซ็ต

คุณยังสามารถตรวจสอบความเท่าเทียมกันของตัวเลขใดก็ได้โดยไม่ต้องเปลี่ยนค่าของผลลัพธ์ ในการดำเนินการนี้ คุณต้องดำเนินการคำสั่ง XOR ด้วยค่าศูนย์ นั่นคือ RECEIVER ต้องมีหมายเลขที่กำลังทดสอบ และ SOURCE ต้องมีศูนย์ จากนั้นคุณต้องตรวจสอบแฟล็กพาริตี ตัวอย่าง:

AL, 10110101b ;วางตัวเลขลงใน AL โดยมีเลขคี่;จำนวนหนึ่งบิต (5) XOR AL, 0 ;ในกรณีนี้ ไม่ใช่ค่าสถานะพาริตี้ PF;ตั้งค่า (PO) MOV AL, 10110111b ;วางตัวเลขใน AL ด้วยจำนวนคู่; จำนวนหนึ่งบิต (6) XOR AL, 0 ; ในกรณีนี้แฟล็กพาริตี PF ; จะถูกตั้งค่า (PE)

ในโปรแกรมดีบักเกอร์ ตัวย่อ PE (Parity Even) มักใช้เพื่อแสดงถึงจำนวนคู่ในผลลัพธ์ผลลัพธ์ และ PO (Parity Odd) สำหรับเลขคี่

ความเท่าเทียมกันในคำ 16 บิต

ดังที่ได้กล่าวไปแล้ว แฟล็กพาริตี้จะถูกตั้งค่าโดยขึ้นอยู่กับจำนวนแฟล็กที่อยู่ในไบต์ต่ำของผลลัพธ์ ในการตรวจสอบความเท่าเทียมกันของตัวถูกดำเนินการ 16 บิต คุณต้อง XOR ไบต์สูงและต่ำของตัวเลข:

MOV AX, 64C1h ;0110 0100 1100 0001 - 6 หนึ่งบิต XOR AH, AL ;ตั้งค่าสถานะ Parity

ด้วยวิธีง่ายๆ นี้ ตัวถูกดำเนินการ 16 บิตจะถูกแบ่งออกเป็นสองไบต์ (2 กลุ่ม กลุ่มละ 8 บิต) และเมื่อดำเนินการคำสั่ง XOR บิตหนึ่งที่อยู่ในบิตที่สอดคล้องกันของตัวถูกดำเนินการ 8 บิตสองตัวจะไม่ถูกนำมาพิจารณา บัญชี. เพราะบิตที่สอดคล้องกันของผลลัพธ์คือศูนย์

คำสั่ง XOR จะลบหนึ่งบิตของตัวถูกดำเนินการ 8 บิตสองตัวที่ทับซ้อนกันออกจากผลลัพธ์ และเพิ่มบิตที่แยกจากกันหนึ่งบิตให้กับผลลัพธ์ นั่นคือความเท่าเทียมกันของตัวเลข 8 บิตที่เราได้รับจะเหมือนกับความเท่าเทียมกันของตัวเลข 16 บิตดั้งเดิม

0110 0100 1100 0001 - หมายเลข 16 บิตดั้งเดิม 0 แฮคเกอร์ 1 = 1 1 แฮคเกอร์ 1 = 0 1 แฮคเกอร์ 0 = 1 0 แฮคเกอร์ 0 = 0 0 แฮคเกอร์ 0 = 0 1 แฮคเกอร์ 0 = 1 0 แฮคเกอร์ 0 = 0 0 แฮคเกอร์ 1 = 1

ผลลัพธ์คือ 4 หน่วย นั่นคือธง PF จะถูกตั้งค่า

ความเท่าเทียมกันในคำคู่แบบ 32 บิต

แล้วถ้าคุณต้องการกำหนดความเท่าเทียมกันของตัวเลข 32 บิตล่ะ?

จากนั้นตัวเลขจะถูกแบ่งออกเป็นสี่ไบต์ และการดำเนินการพิเศษหรือจะดำเนินการกับไบต์เหล่านี้ทีละไบต์

ตัวอย่างเช่น เราแยกตัวเลข 32 บิต บีสี่ไบต์ B0, B1, บี2, B3, ที่ไหน B0- นี่คือไบต์ต่ำ

จากนั้นเพื่อหาความเท่าเทียมกันของเลข B เราจำเป็นต้องใช้สูตรต่อไปนี้:

B0 เอ็กซ์ออร์ B1 เอ็กซ์ออร์ B2 เอ็กซ์ออร์ B3

แต่ในแอสเซมเบลอร์ไม่อนุญาตให้ใช้สัญลักษณ์ดังกล่าว ดังนั้นคุณจะต้องคิดสักหน่อย

และสุดท้ายเกี่ยวกับที่มาของการช่วยจำ แฮคเกอร์- ในภาษาอังกฤษมีคำว่า e เอ็กซ์แผนกต้อนรับ - ข้อยกเว้น คำย่อของคำนี้คือตัวอักษร เอ็กซ์(นั่นคือสิ่งที่เกิดขึ้น) คุณอาจเคยเห็นสิ่งนี้ในโฆษณาหรือในชื่อผลิตภัณฑ์ที่ผู้ผลิตอ้างว่า (หรือคิดว่าพวกเขาอ้างว่า) มีความพิเศษเฉพาะตัว ตัวอย่างเช่น Lada XRAY, Sony XPeria เป็นต้น ดังนั้น XOR จึงเป็นคำย่อที่ประกอบด้วยคำสองคำ - e เอ็กซ์แผนกต้อนรับ หรือ- พิเศษหรือ

บ่อยครั้ง เพื่อแสดงให้เห็นถึงความสามารถที่จำกัดของเพอร์เซปตรอนชั้นเดียวเมื่อแก้ไขปัญหา พวกเขาจึงหันไปพิจารณาสิ่งที่เรียกว่าปัญหา XOR – เอกสิทธิ์หรือ.

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

ให้เราแสดงอินพุตหนึ่งด้วย และอีกอินพุตด้วย จากนั้นชุดค่าผสมที่เป็นไปได้ทั้งหมดจะประกอบด้วยจุดสี่จุดบนระนาบ ตารางด้านล่างแสดงความสัมพันธ์ที่ต้องการระหว่างอินพุตและเอาต์พุต โดยที่การรวมอินพุตที่ควรสร้างเอาต์พุตเป็นศูนย์จะมีป้ายกำกับ และ เอาต์พุตเดี่ยวจะมีป้ายกำกับ และ

คะแนน ความหมาย ความหมาย เอาท์พุทที่จำเป็น
0 0 0
1 0 1
0 1 1
1 1 0

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

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

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

จากนั้นผลลัพธ์ของการทำงานของโครงข่ายประสาทเทียมดังกล่าวสามารถนำเสนอในรูปแบบของตารางต่อไปนี้:

คะแนน ความหมาย ความหมาย เอาท์พุทที่จำเป็น
0 0 0 0 0 0
1 0 1 1 0 1
0 1 1 0 1 1
1 1 0 0 0 0

เซลล์ประสาททั้งสองในชั้นแรกแต่ละเซลล์สร้างพื้นผิวการตัดสินใจในรูปแบบของเส้นตรงที่กำหนด (แบ่งระนาบออกเป็นสองระนาบครึ่ง) และเซลล์ประสาทของเลเยอร์เอาท์พุตจะรวมวิธีแก้ปัญหาทั้งสองนี้เข้าด้วยกัน ทำให้เกิดพื้นผิวการตัดสินใจใน รูปแบบของแถบที่เกิดจากเส้นตรงขนานของเซลล์ประสาทของชั้นแรก:

โครงข่ายประสาทเทียมที่ใช้ในบทความนี้เพื่อแก้ปัญหา XOR นั้นเป็นโครงข่ายดั้งเดิมและไม่ได้ใช้ประโยชน์จากความสามารถของเครือข่ายหลายชั้นอย่างเต็มที่ เห็นได้ชัดว่าโครงข่ายประสาทเทียมหลายชั้นมีพลังในการแสดงมากกว่าโครงข่ายประสาทเทียมแบบชั้นเดียวเฉพาะในกรณีที่มีความไม่เชิงเส้นเท่านั้น และในเครือข่ายนี้ จะใช้ฟังก์ชันการเปิดใช้งานเชิงเส้นตามเกณฑ์ เครือข่ายดังกล่าวไม่สามารถฝึกอบรมได้ เช่น การใช้อัลกอริธึมการเผยแพร่กลับ

ฟังก์ชั่นที่พวกเขาทำนั้นค่อนข้างซับซ้อนกว่าในกรณีขององค์ประกอบ AND หรือองค์ประกอบ OR อินพุตทั้งหมดของเกท XOR มีค่าเท่ากัน แต่ไม่มีอินพุตใดที่สามารถบล็อกอินพุตอื่นๆ ได้โดยการตั้งค่าเอาต์พุตให้เป็นหนึ่งหรือศูนย์ ตารางที่ 4.1. ตารางความจริงองค์ประกอบพิเศษหรือองค์ประกอบสองอินพุต
อินพุต 1 อินพุต 2 ออก
0 0 0
0 1 1
1 0 1
1 1 0


ข้าว. 4.1.

ฟังก์ชัน Exclusive OR หมายถึงสิ่งต่อไปนี้: จะปรากฏที่เอาต์พุตเมื่อมีอินพุตเดียวเท่านั้น หากมีอินพุตตั้งแต่สองตัวขึ้นไป หรือหากอินพุตทั้งหมดเป็นศูนย์ เอาต์พุตจะเป็นศูนย์ ตารางความจริงองค์ประกอบสองอินพุต Exclusive OR ได้รับในตาราง 4.1. การกำหนดที่ใช้ในโครงการในประเทศและต่างประเทศแสดงไว้ในรูปที่ 1 4.1. คำจารึกเกี่ยวกับการกำหนดองค์ประกอบภายในประเทศขององค์ประกอบพิเศษหรือ "=1" หมายความว่าสถานการณ์จะถูกเน้นเมื่อมีอินพุตเพียงหน่วยเดียวเท่านั้น

มีองค์ประกอบ XOR เล็กน้อยในซีรีย์มาตรฐาน ซีรีย์ในประเทศมีวงจรไมโคร LP5 (องค์ประกอบสองอินพุตสี่องค์ประกอบพร้อมเอาต์พุต 2C), LL3 และ LP12 ซึ่งแตกต่างจาก LP5 ในเอาต์พุต OK องค์ประกอบเหล่านี้มีการใช้ฟังก์ชันที่เฉพาะเจาะจงเกินไป

จากมุมมองทางคณิตศาสตร์ องค์ประกอบ XOR ดำเนินการสิ่งที่เรียกว่าผลรวมแบบโมดูโล-2 ดังนั้นองค์ประกอบเหล่านี้จึงเรียกว่าตัวบวกแบบโมดูโล-ทู ดังที่กล่าวไว้ในการบรรยายครั้งก่อน การรวมโมดูโล 2 จะถูกระบุด้วยเครื่องหมายบวกที่อยู่ในวงกลม

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

ในฐานะที่เป็นตัวบวกแบบโมดูโล 2 องค์ประกอบ XOR ยังใช้ในตัวแบ่งแบบโมดูโล 2 แบบขนานและแบบอนุกรมที่ใช้ในการคำนวณผลรวมตรวจสอบแบบวน แต่แผนการเหล่านี้จะกล่าวถึงโดยละเอียดในการบรรยายที่ 14,15

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


ข้าว. 4.2.

ในกรณีที่มีสองสัญญาณที่มีขั้วเดียวกัน (บวกหรือลบ) และไม่รวมการมาถึงพร้อมกัน สามารถใช้องค์ประกอบพิเศษหรือเพื่อผสมสัญญาณเหล่านี้ (รูปที่ 4.3) สำหรับขั้วของสัญญาณอินพุตใดๆ สัญญาณเอาท์พุตขององค์ประกอบจะเป็นค่าบวก สำหรับสัญญาณอินพุตเชิงบวก เกต XOR จะทำหน้าที่เป็นเกต 2OR และสำหรับอินพุตเชิงลบ มันจะมาแทนที่เกต 2AND-NOT การเปลี่ยนดังกล่าวอาจมีประโยชน์ในกรณีที่องค์ประกอบเอกสิทธิ์หรือองค์ประกอบบางส่วนยังไม่ได้ใช้ในวงจร จริงอยู่ก็ต้องคำนึงถึงสิ่งนั้นด้วย ความล่าช้าในการขยายพันธุ์สัญญาณในองค์ประกอบ XOR มักจะใหญ่กว่าเล็กน้อย (ประมาณ 1.5 เท่า) กว่าการหน่วงเวลาในองค์ประกอบ AND, NAND, OR, NOR ที่ง่ายที่สุดเล็กน้อย

ในทางปฏิบัติ องค์ประกอบสองอินพุตที่ใช้กันมากที่สุดคือ “เอกสิทธิ์เฉพาะหรือ” ในรูป รูปที่ 1 แสดงการกำหนดกราฟิกทั่วไปขององค์ประกอบที่ไม่มีการผกผันและตารางสถานะ พูดง่ายๆ ก็คือ สาระสำคัญขององค์ประกอบนี้มีดังนี้: สัญญาณเอาต์พุตจะปรากฏเฉพาะเมื่อระดับลอจิคัลที่อินพุตไม่เท่ากัน

โครงการระบุขอบและจุดตัดของพัลส์

ในวงจรนี้ มีการใช้เกต XOR สามตัวเพื่อหน่วงเวลาพัลส์ DD1.4 - สรุป พัลส์เอาท์พุตมีขอบนำและขอบตกที่มั่นคง ระยะเวลาของพัลส์เอาท์พุตแต่ละตัวจะเท่ากับสามเท่าของเวลาหน่วงการสลับของแต่ละองค์ประกอบทั้งสาม ช่วงเวลาระหว่างขอบของพัลส์เอาท์พุตจะเท่ากับระยะเวลาของพัลส์อินพุต อุปกรณ์นี้ยังเพิ่มความถี่ของสัญญาณอินพุตเป็นสองเท่าอีกด้วย

มีทรัพย์สินที่น่าสนใจอีกแห่งหนึ่งเรียกว่า Exclusive OR หากใช้ค่าคงที่ "0" กับอินพุตตัวใดตัวหนึ่ง สัญญาณที่เอาต์พุตขององค์ประกอบจะทำซ้ำสัญญาณอินพุต และหากค่าคงที่ "0" เปลี่ยนเป็นค่าคงที่ "1" สัญญาณเอาต์พุตจะ เป็นการผกผันของสัญญาณอินพุตอยู่แล้ว

บางครั้งจำเป็นต้องได้รับเกท "เฉพาะหรือ" จากเกทลอจิคัลมาตรฐานแต่ละเกท ตัวอย่างคือวงจรองค์ประกอบ "เฉพาะหรือ" ที่ใช้กับองค์ประกอบ 2-AND-NOT สี่องค์ประกอบ รูปที่ 3 แสดงวงจร XOR ในสี่สถานะ นี่จะแสดงระดับลอจิกที่เป็นไปได้ทั้งหมดในแต่ละลอจิกเกต 2-NAND ที่ใช้

องค์ประกอบดังกล่าวรวมอยู่ในแผนภาพ ในวงจรนี้ องค์ประกอบ "เฉพาะหรือ" ทำจากองค์ประกอบ 2-AND-NOT สี่องค์ประกอบที่รวมอยู่ในแพ็คเกจหนึ่งของไมโครวงจร K561LA7

เครื่องกำเนิดสัญญาณแยกที่มีความถี่ต่างกัน

วงจรขับจะแสดงในรูปที่ 4 ในที่นี้ องค์ประกอบพิเศษหรือตรรกะยังถูกนำไปใช้กับองค์ประกอบ 2-AND-NOT สี่องค์ประกอบด้วย

พัลส์สี่เหลี่ยมตกลงที่อินพุต 1 และ 2 ของเชปเปอร์ (ดูกราฟ 1 และ 2) ซึ่งมีความถี่การทำซ้ำต่างกัน โหนดที่ใช้องค์ประกอบลอจิคัล DD1.1-DDI.4 จะคูณสัญญาณเหล่านี้ สัญญาณพัลส์เอาท์พุต (กราฟ 3) จากองค์ประกอบ DD1.4 จะถูกป้อนเข้ากับวงจรรวม R3, C1 ซึ่งแปลงเป็นสัญญาณสามเหลี่ยม (กราฟ 4) โดยมีความถี่เท่ากับความแตกต่างในความถี่ของสัญญาณอินพุตและ op-amp DA1 แปลงสัญญาณที่ได้รับเป็นคลื่นสี่เหลี่ยม (ดูตารางที่ 5) ตัวต้านทาน R1 ควบคุมระยะเวลาของครึ่งคลื่นบวกและลบของสัญญาณเอาท์พุต โครงการที่น่าสนใจมาก ผู้ออกแบบวิทยุมีบางอย่างที่ต้องคิด ตัวอย่างเช่น สัญญาณที่แสดงในกราฟที่สามเป็นสัญญาณ PWM คลื่นไซน์
แน่นอนว่าช่วงของการใช้องค์ประกอบ "พิเศษเฉพาะหรือ" นั้นกว้างกว่ามาก ในความคิดของฉันฉันได้นำเสนอที่นี่น่าสนใจยิ่งขึ้นสำหรับนักวิทยุสมัครเล่น



กำลังโหลด...
สูงสุด