게임/TIS-100

TIS-100 1단계 MOV 명령어

CodeHS 2019. 2. 7. 19:46

TIS-100 1단계 MOV 명령어


이 게임은 어셈블리어를 간략화해서 만든게임이다. MOV명령어는 어셈블리어에서도 많이나오는 중요한

명령어이기도 하다. 

MOV=MOVE를 줄인것으로 뜻은 움직임을 뜻한다.

데이터 이동(전송)


한번 직접 MOV 명령어를 사용해보자.

MOV UP, DOWN을 IN.X 밑에 있는 박스에다가 적어보자.

MOV UP, DOWN은 좌측에 IN.X안에있는 숫자를 위에서 받아서 

아래로 전송하라는 명령어이다.


좌측밑에 STEP이라는 버튼을 눌러서 어떻게 숫자가 이동하는지 관찰해보자.

STEP은 하나씩 실행하는것이도 RUN전부 실행 FAST를 누르면 바로 결과를 볼 수 있다.



위와 같이  IN.X에서 숫자 51을 받아오게 된다. 

그 후 한번더 STEP을 누르면 


51이 밑으로 가는것을 볼 수 있다. 그 이유는 MOV UP, DOWN 이라는 명령어를 사용했기 때문에

위에서 숫자를 받아와서 아래로 내보내는것이다.


 UP,LEFT 하면 위에서 왼쪽으로 UP, RIGHT 하면 위에서 오른쪽으로 DOWN, UP 을 하면 아래에서 위쪽으로

이렇게 명령어를 사용하여 숫자를 여러방향으로 옮길 수 있다.


1단계의 조건을 보면 IN.X숫자를 OUT.X로 내보내고 IN.A 숫자를 OUT.A로 내보내라는 뜻이다.


한번 51을 OUT.X로 내보내도록 명령어를 입력해보자.


이렇게 입력하여 하나씩 실행해보면 51은 밑으로 이동하는것을 볼 수 있다.

위에 62는 51의 다음숫자이다. 결국에는 숫자가 하나씩 내려오게 된다.


결국에는 OUT.X로 가게됨으로 RUN을 눌러서 실행해보면

OUT.X표에 숫자가 채워지는 것을 볼 수 있다.


이제 나머지 OUT.A도 채워보자.


IN.A는 우측상단에 있으므로 LEFT와 RIGHT를 적절하게 사용하면 금방 깰 수 있다.


IN.A에서 UP으로 숫자를 받고 LEFT를 통해서 왼쪽으로 넘겨준다.

RIGHT를 통해서 숫자를 받고 DOWN을 통해서 밑으로 넘겨준다

아래로 넘겨주고

RIGHT를 통해서 OUT.A랑 연결되어있는 박스로 넘겨주고나서 LEFT로 숫자를 받고 DOWN으로 내려주면 된다.

그 후 RUN을 눌러주면 숫자가 채워지면서 게임은 클리어가된다 . 



이런식으로 코드를 입력하여 옆에 표에다가 숫자를 채워주면 게임은 끝이난다.

게임이 끝나고 나오는 표는 코드를 얼마나 효율적으로 작성했는지 알려준다.

이렇게 1단계는 끝이난다.


'게임 > TIS-100 ' 카테고리의 다른 글

TIS-100 어셈블리 프로그래밍게임  (0) 2019.02.06