[Libasm] syscall error 처리
·
42Seoul/Libasm
error 처리 외부 함수인 ___error를 사용해서 errno 값을 세팅 errno는 가장 최근 에러의 번호를 담는 integer 타입 변수이다. 프로그램이 시작되면 errno는 0으로 초기화 된다 에러가 생기면 시스템 콜 함수는 NULL 또는 -1을 반환한다 에러 타입을 파악하기 위해 외부 변수 errno에 에러 번호가 담긴다 man errno /* ... When a system call detects an error, it returns an integer value indicating failure (usually -1) and sets the variable errno accordingly. Successful calls never set errno; once set, it remains u..
[Libasm] 어셈블리어, NASM?
·
42Seoul/Libasm
어셈블리어란? 어셈블리어(assembly language)는 이해하기 어려운 기계어를 쉽게 연상할 수 있는 기호를 기계어와 1:1로 대응시켜 코드화한 기호 언어이다. 어셈블리어로 작성한 원시 프로그램은 어셈블러를 통해 목적프로그램(기계어)로 어셈블 하는 과정을 거쳐야 한다. 프로그램에 기호화된 명령 및 주소를 사용한다. 어셈블리어의 기본 동작은 동일하지만 작성 CPU마다 사용되는 어셈블리어가 다를 수 있다. 어셈블리어에서 사용되는 명령은 의사명령과 실행명령으로 구분할 수 있다. 컴파일 vs 어셈블 Compile(컴파일) : 고급언어로 작성한 원시 프로그램을 컴파일러가 기계어로 번역하는 작업을 컴파일이라고 한다. Assemble(어셈블) : 어셈블리어로 작성한 원시 프로그램을 어셈블러가 번역하는 작업을 어..
WONILLISM
'error' 태그의 글 목록