XOR回路をラダー言語とアッセンブリ言語で書く
以下に、**XOR回路(排他的論理和)**をラダー言語(ラダー図)とアセンブリ言語(x86)で記述した例を説明します。XORは「入力が異なるときに真」となる特性を持ち、制御システムで頻繁に利用されます。 --- ### 1. ラダー言語(ラダー図)でのXOR回路 #### 方法1: 基本ロジックの組み合わせ ``` |-----| |/|---( )--| (A AND NOT B) | A | | B | OUT1 | |-----| |-----| | |/|---|-----| | | A | | B | | |-----|-------( )--| (NOT A AND B) OUT2 | |-----|-------( )--| |OUT1 | OUT2 OUT | (OUT1 OR OUT2) ``` **動作**: 1. `(A AND NOT B)` と `(NOT A AND B)` を並列実行 2. 両方の結果をORで統合 #### 方法2: 機種依存のXOR命令(一部PLC) ``` |--[XOR A B]--( )--| | OUT | ``` (※三菱電機PLCなどでは`XOR`命令が直接利用可能) --- ### 2. x86アセンブリ言語でのXOR回路 #### 基本実装(メモリ変数使用) ```assembly section .data A db 1 ; 入力A (1=ON, 0=OFF) B db 0 ...