공지사항

이곳으로 이전했습니다. 또는 구글 앱스토어에서 'likewind' 를 검색해서 설치해주세요. 설치링크

2017년 1월 11일 수요일

어셈블리언어


"어셈블리어를 다루는 몇 안되는 책이다. 예제를 돌려보지 못한 점이 아쉽다"

초심프로젝트의 일환으로 읽은 세 번째 책이다. 어셈블리어라... 나름대로 기대를 많이 가지고 읽었던 책이다. 흔히 알고있는 어셈블리어는 기계어라는 고정관념(?) 에서 약간 탈피하게 만들어 준 책이다. 어셈블리어의 레퍼런스 냄새가 나는 책인 만큼 어셈블리어로 할 수 있는 모든 것을 알려준다.
심지어, 어셈블리어 구조체를 만들어 함수를 만드는 것까지 보여준다. 더 이상 C 같은 고급 언어는 필요하지 않을 것 같다는 느낌까지 들 정도이다. 하지만, 예전에 비해 컴파일러의 성능이 눈에 띄게 좋아졌고 실제로 현장(field)에서 어셈블리어가 필요할 만큼 최적화에 민감한 경우가 점점 줄어들고 있기 때문에, 언젠가는 어셈블리어의 위치가 점점 약해질 것이라는 생각이 들었다.
책에서도 컴파일 시에 최적화 옵션을 사용했을 때와 사람이 직접 최적화시켜서 어셈블리어로 만들었을 때와 큰 차이를 보이지 않는다고 말하고 있다. 뒤에서는 MS-DOS 프로그래밍의 예를 들어 설명하고 있다. 한가지 아쉬운 점은 대부분의 예제 프로그램들이 제대로 실행되지 않는 점이었다. real mode 에서 동작하는 프로그램의 경우, 운영체제에서 실행하지 못하도록 막고 있기 때문이다.
중간 중간에 나오는 컴퓨터 구조에 대한 설명과 간단한 운영체제(MS-DOS)에서의 디바이스 제어 방법에 대해서 알 수 있었던 점은 이 책의 장점이라고 하겠다.

댓글 없음:

댓글 쓰기