어셈블리어와 C소스와 링크 컴파일 하기.
그림 1> OBJ 파일 생성전.
1. 그림 1>에서 각각의 어셈블리어 파일과 C 파일이 있는 것을 확인 할수 있지만 아직 까지 실행 파일을 만들 수 있는 상태가 아니다. 실행 파일을 만들려면 일단 오브젝트 파일인 OBJ확장자 파일을 생성 해야 한다.
그림 2> first.asm 컴파일 명령어.
2. 그림 2>에서 first.ams이라는 어셈블리어 파일을 컴파일 하여 OBJ파일을 생성하기 위해 nasm 이라는 컴파일러를 사용 하였다. 일단 컴파일러는 masm 이라고 마이크로 소프트용 어셈블리어 컴파일과 nasm 이라는 컴파일러가 있다. 그 중에서 nasm 이라는 컴파일러로 first.asm 이라는 파일을 컴파일 하여 OBJ 파일을 생성 한다.
그림 3> first.obj 파일 생성.
3. 그림 3>에서 원하는 오브젝트 파일을 얻었다. 그럼 나머지 asm_io.asm 도 컴파일 하여 OBJ 확장자 파일을 생성 해볼까이...
그림 4> asm_io.asm 컴파일 명령어.
4. 그림 4>는 역시 asm_io.obj 파일을 얻기 위해 컴파일을 실행한 화면이다.
그림 5> asm_io.obj 파일 생성.
5. 그림 5>에서도 역시 원하는 오브젝트 파일을 얻을 수 있었다. 그럼 이제 마지막 파일이 driver.c 파일도 OBJ 파일을 얻어 보입시더.. 그러나 이번엔 컴파일 명령어가 다르다.
그림 6> driver.c 컴파일 명령어.
6. 그림 6>에서는 OBJ 파일을 얻기 위해 cl 명령어를 사용 하였고 이유는 확장자가 c 이므로 그렇게 하였고 -c 옵션은 넣지 않으면 링크를 걸기 때문에 제대로 되지 않는다. 그러므로 -c 라는 옵션으로 원하는 OBJ 파일을 얻는당..
그림 7> driver.obj 파일 생성.
7. 그림 7>에서 마지막으로 필요한 driver.obj 파일을 얻었다. 이 얼마나 감격에 겨운가? ㅠㅠ 드뎌 마지막 작업인 링크를 거는 컴파일 만 하면 그렇게 기다리고 기다리던 실행 파일을 얻는 순간이다. ㅎㅎㅎ 그럼 마지막 작업으로 바로 고?
그림 8> OBJ 파일을 링크 시키는 컴파일 명령어.
8. 그림 8>에서 드뎌 기다리고 기다리던 마지막 작업을 완료 하였다. 그림에서 볼수 있듯이 오류도 없고 경고도 없는 것을 확인 할 수 있다.
그림 9> 실행 파일 생성.
9. 그림 9>에서 드뎌 고생의 결과 물인 실행 파일이 생성 된 것 을 확인 할 수있다. 그럼 실행이 되는지도 봐야 되지 않을까?
그림 10> 실행 파일 실행 결과.
10. 그림 10>은 생성된 실행 파일을 실행 시킨 결과이다. 제대로 동작 한다. ㅎㅎ 암튼 결과가 좋은니 참 좋당..
'코스웨어 > 12년 내장형하드웨어' 카테고리의 다른 글
하이퍼터미널에 타이핑시 lcd케릭터에 표시 (1) | 2012.08.23 |
---|---|
[0823]하이퍼 터미널을 통해 LCD에 문자 찍기 소스입니다. (0) | 2012.08.23 |
charactor lcd 추가내용 (0) | 2012.08.23 |
[assembly]0821-업무일지 (0) | 2012.08.23 |
[Assembly] 8월 22일 업무일지 By.정철 (3) | 2012.08.22 |
매트릭스 화면보호기 입니다. by. 감정현 (0) | 2012.08.22 |
NFL 강남스타일 터치다운 세레모니 - 싸이 대단!! (1) | 2012.08.22 |
레지스터 클래스 (2) | 2012.08.22 |