Category: CS:APP

  • 有關 IEEE 754 浮點數的閱讀素材

    IEEE 754 規範 IEEE 754: Standard for Binary Floating-Point Arithmetic: IEEE 754 工作群組 IEEE 754-1985: The standard itself, 1985 version IEEE 854-1987: Generalized 754-1985 IEEE 754-2008: Latest version of IEEE 754 IEEE 754 閱讀素材 David Goldberg’s article, What Every Computer Scientist Should Know about Floating-Point Arithmetic, covers important aspects of floating-point arithmetic from the perspective…

  • CS:APP Chapter 7 Linking 筆記

    CS:APP Chapter 7 Linking 筆記

    為啥要學 linking? 了解 linker 可以幫助你建立更大的程式。 了解 linker 可以幫助你避免危險的程式錯誤。 了解 linker 可以幫助你了解程式如何實現 scoping 規則。 了解 linker 可以幫助你了解其他的系統概念。 了解 linker 可以讓你使用 shared libraries。 7.1 Compiler Drivers gcc 不是個編譯器,是一個 compiler driver,提供整個編譯系統 (compilation system) 會用的東西。 當呼叫 gcc,他會調用 language preprocessor, compiler, assembler 與 linker。 可以加上 -v 來看 gcc 實際上如何調用上面提到的東西。 假設執行 gcc -o main main.c,gcc 基本上會調用下列工具: cpp – preprocessor – 產生 ASCII intermediate file,…