Linux assembly language programming
著者
書誌事項
Linux assembly language programming
(Open source technology series)
Prentice Hall PTR, c2000
大学図書館所蔵 全2件
  青森
  岩手
  宮城
  秋田
  山形
  福島
  茨城
  栃木
  群馬
  埼玉
  千葉
  東京
  神奈川
  新潟
  富山
  石川
  福井
  山梨
  長野
  岐阜
  静岡
  愛知
  三重
  滋賀
  京都
  大阪
  兵庫
  奈良
  和歌山
  鳥取
  島根
  岡山
  広島
  山口
  徳島
  香川
  愛媛
  高知
  福岡
  佐賀
  長崎
  熊本
  大分
  宮崎
  鹿児島
  沖縄
  韓国
  中国
  タイ
  イギリス
  ドイツ
  スイス
  フランス
  ベルギー
  オランダ
  スウェーデン
  ノルウェー
  アメリカ
注記
Includes index
内容説明・目次
内容説明
Master x86 assembly language from the Linux point of view! Assembly language lies at the boundary between hardware and software. While it can be described purely in terms of how it controls hardware, many of its features only make sense in the context of operating systems and programming languages. In Linux Assembly Language Programming, Bob Neveln explains all the key features of x86 assembly language in the context of the Linux operating system and the C language. The book's step-by-step, one-concept-at-a-time coverage is designed to help experienced hardware programmers move to Linux, and learn how to create Linux device drivers. As developers learn new x86 assembly language skills, they also gain "under the hood" insight into how Linux works -- and into the way processor and software design impact each other. For C programmers who want to understand more about the interactions between Linux and hardware; and for assembler programmers who want to apply their skills in the Linux environment.
目次
1. Introduction.
The Fetch-Execute Cycle. The Linux Operating System. The Gnu C Compiler. The Edlinas Assembler. NASM. Other Assemblers.
2. Placeholding Numeration.
The Decimal and Pentimal Systems. Pentimal Arithmetic. Conversion to Pentimal. The Binary System. Memory as a Rectangle of Bits. The Hexadecimal System. Base Distinguishing Notations. Fractions in Other Bases. Converting Fractions.
3. Logic Circuits and Computation.
The NOT Gate. Boolean Operators. Logic Gates. Addition Circuits. Sequential Circuits. Negative Number Representation. Subtraction Using Negation. Placeholding Two's Complement. Memory Circuits. x86 General Registers and their Ancestry. The MOV Command. Addition and Subtraction Commands. Multiplication and Division Commands.
4. Assembly Language.
The Four Field Format. Computers from the CPU Standpoint. Simple Assembly Language Programs. Assembler Programs with Jumps. Assembler Programs with Loops. Signed Comparisons. Unsigned Comparisons. Linux .s files.
5. Machine Language.
Assembling Simple Programs. Opcode Space. The ModRM Byte. 386 Space (0F + ...). 32-Bit vs 16-Bit Code. The 8-Bit Registers. Linux .o Files.
6. Memory.
4-Byte Data Width. Addresses in Brackets. Operand Size Ambiguity. Labels. Immediate Storage.
7. The Stack.
Push and Pop Operations. Subprograms. Parameter Passing. Recursion.
8. Linux User Programs.
Multitasking. Paging. Address Translation. Program Segments. Other Data Segments. Protection. Executable Files in ELF Format. Object Files in ELF Format.
9. Interrupts.
Polling. External Interrupts. ISA Architecture. Internal and Software Interrupts. System Calls. Privilege Levels. Control Transfer. Scheduling.
10. Bit Manipulations.
Bitwise Logic Operations. The AND, OR, NOT, and XOR Commands. Bit Setting and Testing. Shift Instructions.
11. Device Drivers.
Device-Independent Files. Devices as Files. Morse Code Speaker Driver. Serial Port Digitizer Driver.
12. DOS Programs.
Real Mode Segmentation. Edlinas Environment Variables. Fixed Memory Areas. Real Mode Interrupts. Checking DOS Memory.
13. Linux Boot Time Programs.
Changing to Protected Mode. Protected Mode Segmentation. Setting Up the Global Descriptor Table. Closing.
Index.
「Nielsen BookData」 より