본문/내용
1. 프로젝트 개요
부루마블은 전 세계에서 인기 있는 보드게임으로, 인구의 약 70%가 한 번 이상 경험한 게임이다. 이번 프로젝트는 어셈블리어로 부루마블(2)를 구현하는 것을 목표로 하였으며, 고속 처리와 저수준 하드웨어 제어 능력을 활용하여 기존의 고수준 언어로 구현된 버전보다 성능 향상과 최적화를 도모하는 것을 목적으로 하였다. 어셈블리어는 하드웨어와 밀접히 연관되어 있어 메모리 사용량과 실행 속도를 극대화할 수 있으며, 이러한 특성을 활용하여 복잡한 보드게임인 부루마블을 효율적으로 구현하는 것이 본 프로젝트의 핵심 과제이다. 부루마블은 총 32개의 토지, 16개의 카드, 4개의 주사위, 2개의 플레이어로 구성된 게임으로, 각 턴마다 주사위를 굴려 이동하며, 금융 거래와 벌금, 기부 등 다양한 이벤트가 발생한다. 이번 프로젝트에서는 이 모든 게임 룰과 기능을 어셈블리어로 재구현하였다. 예를 들어, 주사위 굴리기 로직은 무작위 수 생성 코드를 작성했으며, 플레이어 위치와 재산 상태를 저장하는 구조체를 메모리 내에 배치하였다. 1초당 평균 10만 번의 명령어 수행이 가능하다는 통계 자료를 고려할 때, 이 구현은 기존의 C 언어로 …