맥이며 XCode3 가 설치되어 있다면 Property List Editor 가 설치되어 있으니 이것 기준으로 설명하겠다.
XCode4 에서는 XCode 자체에 Property List 편집기가 포함되어 있으니 알아서 사용.
대강 기초 틀은 이렇다. (Type에 유의하자.)
(밑에서 설명하려 했는데 밑으로 내려가니 그림이 안보이네. items 하위 항목에 대한 설명은 펼치기!)
items 하위에 순서대로 설정 안에서 나타나게 된다.
각 키의 순서는 큰 상관없으니 대강 저것과 비슷하게 만들어 놓자.
key는 일종의 고유값? 이다. 설정을 호출할때 필요하니 겹치지 않게 하자. 뭔가 데이터를 입력받는 값에만 필요.
cell은 역시 설정에서 나타낼 타입을 나타낸다. 위 링크에서 형식들을 확인하자.
default는 기본값. 지금 같은 경우엔 cell이 스위치로 되어있어서 Boolean 으로 설정하였는데 아닐경우 String 등으로 타입을 바꿔줘여 한다. 데이터를 입력받는 값에만 필요.
defaults 는 설정 파일의 이름. preferenceLoader가 설정앱 내에서 사용자가 설정한 값을 알아서 저장해 주는데 이 저장되는 파일의 경로가 /var/mobile/Library/Preferences/ 하위이며, 이 안은 아이튠즈 백업시 백업이 되는 곳이다. 왠만하면 모든 키가 같게 하자..자세한 설명은 밑에서.. 입력 받는 값에만 필요.
label은 나타나는 이름..
모두 한번씩 써보면 알게 된다...ㅎㅎ
우선 루트 하위에 title, entry, items 값이 있게 되는데 이중 title, entry 부분 부터 봐주시길..
entry부분이 모두 여기에 보이게 된다. 여기서는 아이콘을 내가 넣지 않았으니 안뜨는데, 아이콘에는 경로를 써주면 된다. 다른 경로라도 상관없고 plist 와 같은 폴더에 있다면 그냥 이름만 써주면 된다.
cell값은 건드릴것 없고 label은 바꿔주면 된다.
root/title 에 있는 값이 여기에 들어 오게 된다.
items 하위 설명은 위에 첫번째 그림 밑에 펼치기를 누르도록.
잘 모르겠으면 예시파일을 하나 만들어서 아이폰에 넣어서 테스트 해보자.
리스프링이 필요없으며 그냥 설정앱을 다시 열어주면 된다.
items 설명하면서도 말하였지만, 값의 저장경로는
/var/mobile/Library/Preferences/ 하위에 defaults에 지정한 이름으로 저장이 된다.
간단한 전기적 장치는 물론 외국에서는 8비트, 16비트 CPU를 만들기도 했다고 한다...
여기서 가장 기본이 되는건 논리게이트! 전자과학 세트 같은것을 구매해도 들어있는 작은 IC 칩들은
이러한 논리게이트들로 이루어져 있다.
논리게이트의 종류는 AND, NAND, OR, NOR, NOT, Buffer, X-OR,X-NOR
대략 이정도..?
중학교때 전자과학 탐구대회를 나갔다면 모두 알겠지만, 한 학교에 일년에 한~두명만 나가는 것이니 몇이나 될까..
논리 게이트. AND / OR / Buffer !
AND,OR 은 당신들이 아는 그것이다! 수학에서는 교집합/합집합으로 불리기도...
NAND,NOR 은 AND,OR 을 각각 반대로 뒤집은 논리게이트.
NOT은 입력받은 신호를 반대로 보내주고 Buffer는 그냥 원래 신호 그대로 보내주는거다.. buffer는 무시해도 됨.
X-OR 은 EXclusive-OR 의 약자로 E-OR,X-OR,XOR 등으로 표기한다. 밑에 표 참고.. X-NOR 역시 X-OR을 뒤집은것!
아래 표를 참고하자.
A와 B는 각각 입력을 나타내며 0은 신호가 없는, 즉 마인크래프트에서는 레드스톤/토치가 검은색으로 꺼진 경우이고
1은 켜진 경우를 뜻한다.. 밑의 표 정도는 읽을 수 있겠지..
내가 직접 만든 표... 기호는 참고용으로 적어놨다. 조금 기호가 이상하다고 하더라도 그냥 넘어가자.. 직접 그린거다..ㅠ
마인크래프트에서의 논리게이트 사용도 오른쪽에 직접 스크린샷 찍어서 넣어놨다. 잘 모르겠으면 따로 검색해서 찾도록 하자. 동영상까지 멋지게 나온 곳이 많다.
참고로 블럭의 종류는 상관없으며 모든 논리게이트에서 블록(혹은 레드스톤 토치)과 바로 붙어있는 레드스톤 하나 까지는 모양이 일자여야 한다. 블럭과 바로 인접한 레드스톤이 왼쪽으로 흰다거나 하면 제대로 논리게이트가 작동되지 않으니 주의하도록 하자.(가장 짜증나는 부분이기도 하다..ㅋ)
여기서 응용은 여러분의 몫!
마인크래프트에서는 모든 논리회로에서는 약간의 시간차가 발생하는것 같던데 이걸 이용하여 시간차를 줄수 있다. NOT게이트를 여러번 돌리면 된다.
NOT게이트의 시간딜레이는 나의 경우 TNT캐논을 만들때 썼다.. TNT 캐논의 경우 앞의 TNT를 날려줄 보조 TNT(?)를 먼저 작동후 날라가서 터질 TNT를 작동 시켜야 하는데 버튼 하나로 사용하기 위해 NOT Gate 를 10번 중첩하여 사용하였다..ㅎㅎ
TNT 얘기가 나와서 말이지만, TNT의 경우 TNT블럭과 같은 층에 레드스톤이 있으면 작동하지 않는다.
ㅇ이 TNT라고 했을때
ㅇ_ ← 이런 모양이 아니라 ㅇㅁ↰ 와 같이 옆에 블록을 하나 두고 그 위에 레드스톤을 둬야 한다. 혹은 그냥 TNT위에 레드스톤을 얹어 놔도 된다.
마인크래프트에서 X-OR / X-NOR 사용하기!
저 표에 보면 X-OR/X-NOR 은 마인크래프트에서는 (내가 알기로는) 없는데 나머지 논리회로를 안다면 아주 쉽게 만들 수 있다.
있더군요.. 시간나면 수정할께요..ㅠ
X-OR 은 A,B 신호를 각각 2개로 나눠서 OR Gate와 NAND Gate 로 각각 넣어주고 나온 신호를 AND Gate 로 받아주면 X-OR 이 만들어 지게 된다.
X-NOR 은 X-OR에 NOT 을 붙이거나 AND/NOR Gate 에 위와 같은 방법으로 각각 넣고 AND Gate 로 한번 걸러주면 된다.
아래는 X-OR 게이트를 만들고 문을 여닫는 화면.
(가장 왼쪽이 OR, 오른쪽에 짤린게 NAND, 문 앞에 있는 GATE 가 AND GATE 이다. 참고하자.)
회로가 모두 꺼지거나 들어왔을 경우에는 X-OR 에 의해 마지막 신호가 0이 되어 문이 닫히고 둘 중 하나만 켜진 경우에는
1이 반환되어 문이 열리는 것을 볼 수 있다.
이렇게 까지 만들어서 어디 쓸꺼냐 라고 물을까봐 생각해 봤는데
계단식이나 복도에서 양쪽에서 서로 제어할 수 있게 스위치를 만들때 쓰일 수 있을 것 같다.
(나이가 어린 학생이라면 기억할듯.. 초등 5학년인가? 실과책에 계단 양쪽에서 불을 사용하기라고 회로가 있지 싶다..)
AND/OR/NOT 으로는 한쪽의 상황에 따라 나머지 한쪽에서 제어가 불가능할수도 있지만 X-OR / X-NOR 은 그럴일은 없다. 공간을 많이 차지하는게 흠이라면 흠...
따라서 복도 등을 만들때 복도 양쪽 끝에서 복도 불을 켤 수 있게 하거나 계단에서 계단 위에서도, 계단 아래에서도 불을 켜는 것과 같은 회로를 만들때 사용할 수 있을 듯 하다.
+ X-OR / X-NOR 게이트를 더 쉽게 만들거나, 이를 활용한 예가 있으면 알려주세요!