여러개의 신호가 섞여있는 네트워크에서 원하는 신호만 골라서 필터링하는 회로



기본형


*조합기에 -2.1G는 신호기에서 쓸수있는 최솟값인 -2,147,483,648이고 입력할때는 -999999999999 넣으면 알아서 맞춰서 입력됨


구리 철 돌 강철 신호가 들어가있는 네트워크에서 철 돌 석탄이 있는지 확인 후 철 돌을 출력함


계산 시간 3틱


사용시 주의점은 소스에는 양수만 들어와야하고 필터 목록에는 신호 크기가 반드시 1이어야 함




작동원리


2진법에서 제일 앞 비트를 부호로 쓰는걸 활용함


설명을 편하게 하기위해 8비트에 저장된다고 가정하겠음


소스 신호가 철11 구리7 이고 필터로 철 신호만 추출하고 싶은 경우를 예로 들면


2진수로 나타내면 철은 0000 1011 구리는 0000 0111 임


첫 연산 조합기를 통과하면 OR 1000 0000 연산으로 철은 1000 1011 구리 1000 0111 로 바뀜 (십진법으로 나타내면 철은 -117 구리는 -121)


필터 목록에서는 철1이 << 연산으로 1000 0000 으로 바뀜


그리고 필터 목록과 소스 신호가 한군대서 만나 더하기 연산을하면


철은 소스에서 온 1000 1011 + 필터에서 온 1000 0000 = 0000 1011로 바뀌고 제일 앞에 붙었던 1이 사라지면서 십진수 -117 에서 11로 음수에서 양수로 바뀌지만 구리는 아직 음수인 상태 그대로라


마지막 비교 조합기에서 양수만 출력하면 철 신호만 얻을수 있음




개량형


소스에서 양수 음수 모두 입력 받을수있고


필터쪽은 1이 아닌 임의의 크기를 가지는 양수 음수 모두 처리가 가능한 버전


계산 시간은 양수 4틱 음수 5틱