모바일 오유 바로가기
http://m.todayhumor.co.kr
분류 게시판
베스트
  • 베스트오브베스트
  • 베스트
  • 오늘의베스트
  • 유머
  • 유머자료
  • 유머글
  • 이야기
  • 자유
  • 고민
  • 연애
  • 결혼생활
  • 좋은글
  • 자랑
  • 공포
  • 멘붕
  • 사이다
  • 군대
  • 밀리터리
  • 미스터리
  • 술한잔
  • 오늘있잖아요
  • 투표인증
  • 새해
  • 이슈
  • 시사
  • 시사아카이브
  • 사회면
  • 사건사고
  • 생활
  • 패션
  • 패션착샷
  • 아동패션착샷
  • 뷰티
  • 인테리어
  • DIY
  • 요리
  • 커피&차
  • 육아
  • 법률
  • 동물
  • 지식
  • 취업정보
  • 식물
  • 다이어트
  • 의료
  • 영어
  • 맛집
  • 추천사이트
  • 해외직구
  • 취미
  • 사진
  • 사진강좌
  • 카메라
  • 만화
  • 애니메이션
  • 포니
  • 자전거
  • 자동차
  • 여행
  • 바이크
  • 민물낚시
  • 바다낚시
  • 장난감
  • 그림판
  • 학술
  • 경제
  • 역사
  • 예술
  • 과학
  • 철학
  • 심리학
  • 방송연예
  • 연예
  • 음악
  • 음악찾기
  • 악기
  • 음향기기
  • 영화
  • 다큐멘터리
  • 국내드라마
  • 해외드라마
  • 예능
  • 팟케스트
  • 방송프로그램
  • 무한도전
  • 더지니어스
  • 개그콘서트
  • 런닝맨
  • 나가수
  • 디지털
  • 컴퓨터
  • 프로그래머
  • IT
  • 안티바이러스
  • 애플
  • 안드로이드
  • 스마트폰
  • 윈도우폰
  • 심비안
  • 스포츠
  • 스포츠
  • 축구
  • 야구
  • 농구
  • 바둑
  • 야구팀
  • 삼성
  • 두산
  • NC
  • 넥센
  • 한화
  • SK
  • 기아
  • 롯데
  • LG
  • KT
  • 메이저리그
  • 일본프로야구리그
  • 게임1
  • 플래시게임
  • 게임토론방
  • 엑스박스
  • 플레이스테이션
  • 닌텐도
  • 모바일게임
  • 게임2
  • 던전앤파이터
  • 마비노기
  • 마비노기영웅전
  • 하스스톤
  • 히어로즈오브더스톰
  • gta5
  • 디아블로
  • 디아블로2
  • 피파온라인2
  • 피파온라인3
  • 워크래프트
  • 월드오브워크래프트
  • 밀리언아서
  • 월드오브탱크
  • 블레이드앤소울
  • 검은사막
  • 스타크래프트
  • 스타크래프트2
  • 베틀필드3
  • 마인크래프트
  • 데이즈
  • 문명
  • 서든어택
  • 테라
  • 아이온
  • 심시티5
  • 프리스타일풋볼
  • 스페셜포스
  • 사이퍼즈
  • 도타2
  • 메이플스토리1
  • 메이플스토리2
  • 오버워치
  • 오버워치그룹모집
  • 포켓몬고
  • 파이널판타지14
  • 배틀그라운드
  • 기타
  • 종교
  • 단어장
  • 자료창고
  • 운영
  • 공지사항
  • 오유운영
  • 게시판신청
  • 보류
  • 임시게시판
  • 메르스
  • 세월호
  • 원전사고
  • 2016리오올림픽
  • 2018평창올림픽
  • 코로나19
  • 2020도쿄올림픽
  • 게시판찾기
  • 게시물ID : humorbest_1088950
    작성자 : BePositive
    추천 : 55
    조회수 : 7120
    IP : 113.10.***.122
    댓글 : 11개
    베스트 등록시간 : 2015/07/02 20:37:11
    원글작성시간 : 2015/07/01 16:21:45
    http://todayhumor.com/?humorbest_1088950 모바일
    내가 지금 노는 건가, 일을 하는 건가. TIS-100
    TIS-100이라는 인디 게임을 들어 보신 적 있으신가요?<br><br>무려 "어셈블리" 언어를 테마로 한 무시무시한 게임입니다.<br>무려 리눅스에서도 돌아가죠.<br><br>혹해서 $7 내고 질렀습니다.<br><br>바로 이 녀석이 TIS-100 인트로 화면입니다.<br>도스 화면 아니냐구요? 잘 보세요 -_-;; 게임 화면 맞습니다.<br><br><div style="text-align:left;"><img width="800" height="488" class="chimg_photo" style="border:medium none;" alt="TIS-100_030.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435733556lfCbkxZcXpeqtK7IO.png"></div><br>TIS는 Tessellated Intelligence System을 줄여 만든 거랍니다.<br><br>그리고 다음 그림이 스테이지 선택 화면입니다. 아재분들은 286, 386 시절의 도스 게임이 떠오를 수도 있을 거에용 ㅋㅋㅋ<br><br><div style="text-align:left;"><img width="800" height="465" class="chimg_photo" style="border:medium none;" alt="TIS-100_025.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435733675HoW2RcKkQEvAA.png"></div><br>믿으실지는 모르겠지만 이게 스테이지 선택 화면입니다. SEGMENT 00150, SEGMENT 10981 이러헥 나온 게 각 스테이지입니다! 색이 밝은 건 지금 선택 가능하다는 거구요, 어둡게 되어 있고 REPAIR N MORE 후 블라블라된 거는 아직 잠긴 상태인 거구요.<br><br>각 스테이지는 퍼즐입니다. 프로그래밍 퍼즐입니다. 퍼즐 스타일의 마치 TDD를 연상시킵니다.<br>문제를 줍니다. 테스트 케이스도 줍니다. 그래서 내 프로그램이 테스트 케이스를 100% 맞춰야 스테이지 클리어 되는 겁니다 -_-<br><br>프로그램은 간단한 어셈블리입니다. 하지만 프로그램을 모르는 사람은 절대 쉽게 시작할 수 없는 게임(?)입니다. 이미 어셈블리 코딩이라는 컨셉 자체가 ㅋㅋㅋ<br><br>본 게임 화면입니다.<br><div style="text-align:left;"><img width="800" height="465" class="chimg_photo" style="border:medium none;" alt="TIS-100_026.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435734091U5QOBmI5.png"></div><br>왼쪽 위에 문제.<br>그리구 그 밑에는 테스트 케이스.<br><br>그리구 12개의 사각형이 있죠? 저게 작은 컴퓨터 노드라고 보면 됩니다.<br>TIS는 무려 분산 시스템인 겁니다.<br><br>1행 2열의 노드에 IN.A 라고 적힌 것이 보이죠? 이제 저 노드로 입력값이 들어올 겁니다. 그럼 그 입력값을 꿍짝꿍짝해서 3행 3열의 OUT.A로 보내는 것이 이 스테이지의 목표입니다. 극초반 스테이지라 쉬운 프로세스입니다. 그냥 흘러들어오는 값을 다른 노드로 릴레이만 해 주면 되지만, 출력시 값을 두 배로 해 주는 것이 목적이죠.<br><br>감 잡히십니까? 각 노드마다 간단한 어셈 명령어로 문제를 푸는 겁니다. 아 빨갛게 COMMUNICATION FAILURE 된 노드는 현재 사용 불가능한 곳입니다. 아, 그리고 저 스샷은 제가 직접 풀어낸 정답 화면입니다. MOVE UP, DOWN 등의 문자들은 제가 입력한 코드인 거에요. <br>노드는 FETCH-스템과 EXECUTION-스텝까지 세심하게 구현되어 있습니다. 그 타이밍에 맞춰서 돌아가도록 짜야 합니다!<br><br><div style="text-align:left;"><img width="800" height="488" src="http://thimg.todayhumor.co.kr/upfile/201507/1435735600XFL2af8aXYb4gsybW5Up43ba3a.png" alt="TIS-100_027.png" style="border:medium none;" class="chimg_photo"></div><br>문제가 어려워지면 당연히 짜야 할 코드의 양도 늘어나는 겁니다!!<br><br>이제 대강 감이 잡히시죠? 그럼 어셈블리는, 어떤 걸 쓰냐구요?<br>게임이니까 재미를 위해 극히 제한된 별도의 명령어 세트를 제공합니다. 그건, 게임 메뉴얼을 봐야죠.<br><br>이 게임의 메뉴얼은, 메뉴얼이라기 보다는 레퍼런스 북이라고 보는 것이 맞을 것 같네요 ㅋㅋㅋ<br>딸랑 18페이지 가량이지만 게임 메뉴얼 치고 이런 압박감을 느낀 건 난생처음이었습니다.<br><br><div style="text-align:left;"><img width="800" height="1034" class="chimg_photo" style="border:medium none;" alt="선택 영역_032.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435734532slYwrrgLLs95dbXyV9DZrxsCNE8lLW.png"></div><br>이것이 메뉴얼의 첫 표지입니다. Randy 삼촌이 갑작스럽게 돌아가시고 나서 그가 개발 중인 기계를 분석하게 되는 거에요.<br><br>그리고 첫페이지... <br><div style="text-align:left;"><img width="747" height="242" style="border:medium none;" alt="선택 영역_033.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435734668Fc5S5IxbDX4RjR4e9XoRxg3LJX.png"><br><br><br>그리고 부터는 TIS의 개념에 대한 설명이 나오구요. 7페이지부터는 명령어 세트를 설명합니다. 죄다 올릴 필요는 없을 것 같고 맛만 보여 드릴께요.<br><div style="text-align:left;"><img width="730" height="895" style="border:medium none;" alt="선택 영역_034.png" src="http://thimg.todayhumor.co.kr/upfile/201507/1435734796QcV8v2Cx3lAQ9t218tUU7eEnemdSTaix.png"></div><br><br></div><br>요약하자면, 프로그래밍으로 직접 쓸 수 있는 레지스터는 ACC 한 개구요, 명령어는 13개밖에 없습니다. 연산은 덧셈 뺄셈, NEGATION만 됩니다. 그리고 조건에 따른 JMP와 그 변종들, 이를테면 JEZ, JNZ, JGZ, JLZ 등등 밖에 없습니다. 기억장치가 더 필요하면 사방에 있는 옆 노드의 레지스터를 활용해야 하는 겁니다! 스택 노드라든가, 아직 더 해봐야 알겠지만 기본적인 건 이렇답니다. <br><br>메뉴얼... 아니 레퍼런스의 대미는 디버깅 기능, 및 시각화 기능 설명으로 끝맺습니다.<br>그래봐야 별 거 아닌 CTRL+C, CTRL+V 정도의 것들인데, 무려 디버깅이라는 용어로 플페이어를 압박한다는 점이 포인트죠.<br><br>아 명령어 앞에 느낌표! 를 붙이면 이게 디버깅 브레이크 포인트를 잡는 거립니다.<br><br>재밌을 거 같아 뵈나요?<br>제가 처음 플레이했을 때는 이건 개발자들의 인생 게임이다!는 생각을 했지만...<br>점차 플레이를 하면서, 문제가 어려워지면서 느끼는 건...<br><br>내가 일하고 나서 놀려고 게임을 하는데, 왜 게임을 하는 중에서조차 프로그래밍을 하면서 일 같은 놀이를 하고 있는가...<br>뭐 이런 변태스러운 시츄에이션일까...<br>뭐 그런 느낌이었습니다.<br><br>하지만 교육용으로는 엄청나게 괜찮은 가능성이 있어 보입니다.<br>이만 TIS-1000 간단한 소개 마칩니다.<br><br>

    이 게시물을 추천한 분들의 목록입니다.
    [1] 2015/07/01 16:44:50  121.159.***.204  nedine  515735
    [2] 2015/07/01 17:25:11  112.175.***.16  앵켕  591582
    [3] 2015/07/01 17:59:50  221.151.***.112  뜻발그미  393894
    [4] 2015/07/01 19:20:08  220.87.***.243  피소금  81642
    [5] 2015/07/01 19:44:46  122.38.***.234  REGENTAG  141650
    [6] 2015/07/01 23:00:00  203.226.***.69  drnase  319729
    [7] 2015/07/02 01:11:54  1.219.***.154  QbsidianH20  214116
    [8] 2015/07/02 06:42:00  175.112.***.12  뽀룹뽀룹  546772
    [9] 2015/07/02 07:49:38  61.77.***.168  ♔♕♖♗♘♙  530879
    [10] 2015/07/02 20:37:11  210.180.***.43  사닥호  425608
    푸르딩딩:추천수 3이상 댓글은 배경색이 바뀝니다.
    (단,비공감수가 추천수의 1/3 초과시 해당없음)

    죄송합니다. 댓글 작성은 회원만 가능합니다.


    현재 게시판의 베스트게시물입니다.  
    번호 제 목 이름 날짜 조회 추천
    1113341
    중국에서는 프로그래머들의 사기진작을 위해 치어리더를 고용... [55] 펌글 가르마탄루피 15/08/27 10:53 14428 62
    1112397
    컴공과의 모험 [3] 펌글 null값 15/08/24 23:45 6788 24
    1111877
    오래된 SI업체의 두 부류 [12] enoeht 15/08/23 18:56 8005 50
    1110385
    뻘글주의 - 갓 취업한 사람들을 위한 오늘의 조언 [10] 구차니 15/08/20 12:06 5057 26
    1107834
    소스코드에서 본 최고의 코멘트들.txt [14] nipa0711 15/08/14 18:05 7118 38
    1107505
    [저격] 일단 JAVA좀 배우지 마세요! [46] 하까요 15/08/13 20:34 12630 49
    1104183
    친구들끼리 대회나가보니 개발이 얼마나 어려운지도 알았고 얼마나 [7] 크짱맨 15/08/05 23:16 5460 21
    1102924
    어셈블리용 IDE 개발을 시작합니다. [22] 중용자 15/08/02 23:05 2985 37
    1102342
    오퍼 받았습니다!! [23] MioLiquid 15/08/01 15:26 3742 18
    1101812
    프게님들, 제 코드 좀 봐주세요. [17] 취중코딩 15/07/31 02:44 3801 34
    1100709
    고급 개발자로 가기위해 반드시 봐야할 책들 [70] 나이쓰한넘 15/07/28 10:40 7737 114
    1099619
    취직했습니다!!!!!! [20] 매애애 15/07/25 22:19 4373 32
    1099571
    구현된 에뮬레이터 화면과 정상 출력되는 게임들 [16] 중용자 15/07/25 19:56 5673 33
    1093515
    광희 프로그래머설 [14] 펌글 이똑똑 15/07/12 19:45 7094 16
    1093054
    뻘글] 몇날며칠을 고생한 메모리 누수를 잡았습니다! [21] 물어라이코스 15/07/11 20:16 5613 45
    1092687
    [푸념]저는 프로그래머이고 개발이 즐거웠습니다. [27] 창작글 훼초코보 15/07/10 22:41 5637 45
    1092025
    그림판으로 코딩하기.gif [21] 사닥호 15/07/09 16:35 7632 31
    1091865
    어셈블리 최적화 [18] 중용자 15/07/09 10:01 4056 25
    1091503
    향후 FASM 라이브러리를 배포할 생각입니다. [12] 중용자 15/07/08 15:33 2235 31
    1089729
    Node.js, Mongodb, Socket.io를 이용한 채팅 구현하기 [10] 본인삭제금지 멋쟁이슈도 15/07/04 17:14 4671 36
    내가 지금 노는 건가, 일을 하는 건가. TIS-100 [11] BePositive 15/07/02 20:37 7120 55
    1088025
    [뻘글]문서화의 중요성 [21] 방울터메이도 15/06/30 19:30 4136 44
    1088019
    개발시 쓸만한 유틸들.. [23] 창작글 해싱 15/06/30 19:22 5057 60
    1085640
    새벽중에 과제에 현상금 걸었다가 글삭튀하신분~ [109] 반복문 15/06/25 17:31 7022 134
    1084709
    sudo [18] 펌글 REGENTAG 15/06/23 22:34 3896 32
    1084386
    졸업 후 1년 반... 취업 성공했어요 >.< [18] 나데시코♥ 15/06/23 10:00 5179 35
    1079757
    프로그램이나 컴퓨터는 쉬운게 아닙니다. [15] 구차니 15/06/14 20:40 5951 53
    1079597
    프로그램 배포 - 움짤 제작기 SmallCam [26] 옥시기 15/06/14 14:59 5552 101
    [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [다음10개▶]
    단축키 운영진에게 바란다(삭제요청/제안) 운영게 게시판신청 자료창고 보류 개인정보취급방침 청소년보호정책 모바일홈