machine code – 기계어
기계어는 0과 1의 연속으로 구성되어 있는 컴퓨터의 기본언어이다. 어떠한 프로그래밍 언어라도 그것을 분석하고 처리한 결과는 결국 기계어가 된다. 프로그램이 작성되고 나면, 원시프로그램 문장들은 기계어로 컴파일된다. 이 기계어는 누군가가 컴퓨터의 운영체계에게 그것을 실행시키도록 요구할 때까지 실행 가능한 파일의 형태로 저장된다 (PC 운영체계에서, 이러한 파일들은 대개 “.exe”라는 확장자를 가진다). 컴퓨터의 마이크로프로세서는 한번에 일정량의 0과 1을 읽어들여 처리하는데, 예를 들면 한번에 32 비트를 읽을 수 있도록 설계될 수도 있다. 컴퓨터는 몇 비트가 무슨 연산을 하도록 지시하는지를 알 수 있도록 설계되었기 때문에, 비트의 개수를 정확히 세어 읽은 다음, 그에 상응하는 연산을 수행할 수 있다. 그리고 나서는 다음 명령문을 읽는 식으로 진행된다. 프로그램의 문제점을 분석하거나 디버깅을 할 때 사용하게되는 것이 그 프로그램의 덤프이다. 덤프란 그 프로그램을 기계어 형태로 보여주는 프린트 출력물로서, 0과 1의 형태로 나타나 있으면 읽기에 매우 힘들므로, 4 비트씩을 끊어서 하나의 16진수로 나타낸다 (덤프는 또한 덤프가 시작되었을 당시에 수행하고 있던 명령문의 주소 등, 컴퓨터 연산에 관한 정보를 포함하기도 한다).