본문으로 건너뛰기

논리 회로

카테고리세계
logic-gates
카테고리
세계

개요

논리 회로는 입력들이 참인지 여부에 따라 출력 신호를 계산하는 와이어 연결된 개체입니다. 대부분의 논리 회로는 참/거짓 결과를 각각 나타내는 1 또는 0만을 출력합니다. Transistor Gate는 예외로, 임의의 신호 타입을 전달하고 출력할 수 있으며, 활성화 입력이 참이 아닐 때에는 0이 아닌 null을 생성합니다.

신호의 참성(truthiness)은 그 타입에 의해 결정됩니다. Null, Conflict, 그리고 Integer = 0은 참이 아닙니다. Integer ≠ 0, Shape, 그리고 Color는 참입니다. 논리 회로는 입력들을 평가할 때 위의 Integer 규칙을 넘어선 암묵적인 숫자 변환이 아니라 그 참성만을 사용합니다.

핵심 게이트들의 동작은 다음과 같습니다. AND Gate는 두 입력이 모두 참일 때만 1을 출력하며, 그렇지 않으면 0을 출력합니다. OR Gate는 적어도 하나의 입력이 참이면 1을 출력하고, 어떤 입력도 참이 아니면 0을 출력합니다. XOR Gate는 정확히 한 입력만 참일 때 1을 출력하며, 둘 다 참이거나 모두 거짓이면 0을 출력합니다. NOT Gate는 입력이 참이 아닐 때 1을 출력하고 입력이 참일 때 0을 출력합니다. Comparison Gate는 선택된 비교 모드(Equal, NotEqual, Greater, GreaterEqual, Less, LessEqual)에 따라 두 입력 신호를 비교합니다. Equal 및 NotEqual 모드에서는 모든 신호 타입에 대해 엄격한 동등/비동등을 검사하여 0 또는 1을 출력합니다. 숫자 비교 모드(Greater, GreaterEqual, Less, LessEqual)에서는 두 신호가 모두 정수일 때만 0이 아닌 결과를 낳으며, 어느 한쪽 입력이라도 정수가 아니면 출력은 0입니다. Transistor Gate는 측면 입력(side input)이 참일 때만 뒤쪽(rear)에서 받은 신호를 전달하며, 측면 입력이 참이 아닐 때 출력은 null입니다. Transistor Gate는 뒤쪽 입력이 담고 있는 임의의 신호 타입을 출력할 수 있으므로 Shape, Color, 0이 아닌 정수 값이나 기타 불리언이 아닌 신호를 전달할 수 있는 유일한 게이트입니다.

논리 신호는 다른 개체들을 특정 방식으로 제어합니다. Belt Filter는 전선 입력 신호로 어떤 출력 벨트에 도형을 보내는지를 선택합니다: Null 또는 Conflict는 벨트를 완전히 차단합니다; Integer = 0은 모든 도형을 측면 출력으로 보냅니다; Integer ≠ 0은 모든 도형을 직진으로 보냅니다; Shape 신호는 일치하는 도형을 직진으로 통과시키고 일치하지 않는 도형은 측면으로 보냅니다; Color 신호는 필터가 모든 도형을 측면으로 보내게 합니다. Pipe Gate는 유체 통과를 제어합니다: Null, Conflict, 그리고 Integer = 0은 유체를 차단합니다; Integer ≠ 0은 통과를 허용합니다; Color는 유체가 그 색 신호와 일치할 때만 통과를 허용합니다. Belt Reader는 그 사이를 통과하는 도형의 분당 속도를 표시하고 전선 출력으로 해당 도형들의 Shape Signal을 출력합니다.

  • Logic Gate 출력은 위에서 명시한 규칙을 넘어선 암묵적 캐스팅이 아니라 오로지 입력의 참성에만 의존합니다.
  • 임의의 신호 타입을 게이팅하려면 Transistor Gate를 사용하세요; 비활성화되면 0 대신 null을 출력한다는 점을 기억하세요.
  • 비수치 타입에는 Comparison Gate의 Equal/NotEqual를 사용하세요; 숫자 비교 모드는 두 입력이 모두 정수일 때만 사용하세요.
  • 필터나 파이프를 배선할 때는 대상 개체가 기대하는 신호 타입(Shape, Color, integer)을 확인하세요. 대상에 따라 동작이 달라집니다.

같은 종류의 엔티티

관련 페이지

마지막 업데이트: