#assembly
노트 3개
Computer Science › C Programming
호출 규약과 스택 프레임함수 호출이 기계어 수준에서 어떻게 이루어지는지 정리한다. 스택 프레임과 프롤로그·에필로그, 스택이 자라는 방향을 확인하는 법, cdecl과 System V AMD64 같은 호출 규약, 가변 인자 함수(va_list)가 동작하는 원리, 꼬리 호출 최적화.
Computer Science › C Programming
C 저수준 최적화컴파일러가 이미 해 주는 최적화와 프로그래머가 힌트로 도울 수 있는 부분을 구분한다. switch를 룩업 테이블·점프 테이블로 바꾸는 원리, 분기 예측 힌트(__builtin_expect, [[likely]]), 도달 불가 힌트, SIMD 내장 함수, memset 같은 라이브러리 함수를 직접 최적화하지 말아야 하는 이유.
Computer Science › Computer Architecture
기본 컴퓨터 프로그래밍기본 컴퓨터의 기계어와 어셈블리 언어, 의사 명령어, 2-pass 어셈블러, 그리고 루프·곱셈·서브루틴·입출력을 어셈블리로 작성하는 방법.