彙編語言藝術

彙編語言藝術

《彙編語言藝術》是2005年3月18日清華大學出版社出版的圖書,作者是Randall Hyde。

基本介紹

  • 書名:彙編語言藝術
  • 作者:Randall Hyde
  • ISBN:9787302104353
  • 定價:88元
  • 出版社:清華大學出版社
  • 出版時間:2005-3-18
  • 裝幀:平裝
圖書簡介,目錄,

圖書簡介

本書是由著名作者Randall Hyde在其十多年的彙編語言教學經驗基礎上編寫而成的,以X86系列微機為背景,從簡單的Hello程式開始,系統而詳細的闡述了X86微機彙編語言的各種基礎知識和編程機巧,內容包括數據表示、存儲器管理、各種數據類型、過程、與彙編語言相關的體系結構、控制結構、檔案、宏指令、位處理指令、字元串指令、MMX指令、類和對象,以及與其他語言的混合編程等,尤其是在高級彙編語言(HLA)方面,本書進行了細緻深入的闡述。
本書力求從藝術的角度來闡述彙編語言的魅力,減輕甚至消除讀者對彙編語言學習的恐懼和苦惱,從而輕鬆快速地掌握彙編語言。

目錄

1HELLO,WORLDOFASSEMBLYLANGUAGE
1.1ChapterOverview
1.2TheAnatomyofanHLAProgram
1.3RunningYourFirstHLAProgram
1.4SomeBasicHLADataDeclarations
1.5BooleanValues
1.6CharacterValues
1.7AnIntroductiontoIfleIntel80x86CPUFamily
1.8SomeBasicMachineInstructions
1.9SomeBasicHLAControlStructures
1.10IntroductionfotfleHLASfandardLibrary
1.11AdditionaIDefailsAbOUtTRY..ENDTRY
1.12HighLeveIAssembIyLanguagevs.LowLevelAssembIy
1.13ForMoreInformation
2DATAREPRESENTATIoN
2.1ChapterOverview
2.2NumberingSystems
2.3TheHexadecimalNumberingSystem
2.4DataOrganization
2.5ArithmeticOperationsonBinaryandHexadecimalNumbers
2.6ANoteAboutNumbersvs.Representation
2.7LogicalOperationsonBits
2.8LogicalOperationsonBinaryNumbersandBitStrings
2.9SignedandUnsignedNumbers
2.10SignExtension,ZeroExtension,Contraction,andSaturation
2.11ShiftsandRotates
2.12BitFieldsandPackedData
2.13AnIntroductiontoFloatingPointArithmetic
2.14BinaryCodedDecimal(BCD)Representation
2.15Characters
2.16TheUnicodeCharacterSet
2.17ForMoreInformation
3MEMORYACCESSANDORGANIZATION
3.1ChaloterOverview
3.2The80x86AddressingModes
3.3Run-TimeMemoryOrganization
3.4HowHLAAllocatesMemoryforVariables
3.5HLASupportforDataAlignment
3.6AddressExpressions
3.7TypeCoercion
3.8RegisterTypeCoercion
3.9TheStackSegmentandthePUSHandPOPInstructions
3.10DynamicMemoryAllocationandtheHeapSegment
3.11TheINCandDECInstructions
3.12ObtainingtheAddressofaMemoryObject
3.13ForMoreInformation
4CONSTANTS,VARIABLES,ANDDATATYPES
4.1ChapterOverview
4.2SomeAdditionalInstructions:INTMUL,BOUND,INTO
4.3TheTBYTEDataTypes
4.4HLAConstantandValueDeclarations
4.5TheHLATYPESection
4.6ENUMandHLAEnumeratedDataTypes
4.7PointerDataTypes
4.8TheHLAStandardLibraryCHARS.HHFModule
4.9CompositeDataTypes
4.10CharacterStrings
4.11HLAStrings
4.12AccessingtheCharactersWithinaSrting
4.13TheHLAStringModuleandOtherString-RelatedRoutines
4.14In-MemoryConversions
4.15CharacterSets
4.16CharacterSetImplementationinHLA
4.17HLACharacterSetConstantsandCharacterSetExpressions
4.18TheINOperatorinHLAHLLBooleanExpressions
4.19CharacterSetSupportintheHLAStandardLibrary
4.20UsingCharacterSetsinYourHLAPrograms
4.21Arrays
4.22DeclaringArraysinYourHLAPrograms
4.23HLAArrayConstants
4.24AccessingElementsofaSingleDimensionArray
4.25MultidimensionalArrays
4.26AllocatingStorageforMultidimensionalArrays
4.27AccessingMultidimensionalArrayElementsinAssemblyLanguage
4.28LargeArraysandMASM(WindowsProgrammersOnly)
4.29Records
4.30RecordConstants
4.31ArraysofRecords
4.32Arrays/RecordsasRecordFields
4.33ControllingFieldOffsetsWithinaRecord
4.34AligningFieldsWithinaRecord
4.35PointerstoRecords
4.36Unions
4.37AnonymousUnions
4.38VariantTypes
4.39UnionConstants
4.40Namespaces
4.41DynamicArraysinAssemblyLanguage
4.42HLAStandardLibraryArraySupport
4.43ForMoreInformation
5PROCEDURESANDUNITS
5.1ChapterOverview
5.2Procedures
5.3SavingtheStateoftheMachine
5.4PrematurelyReturningfromaProcedure
5.5LocalVariables
5.6OtherLocalandGlobalSymbolTypes
5.7Parameters
5.8FunctionsandFunctionResults
5.9Recursion
5.10ForwardProcedures
5.11LowLevelProceduresandtheCALLInstruction
5.12ProceduresandtheStack
5.13ActivationRecords
5.14TheStandardEntrySequence
5.15TheStandardExitSequence
5.16LowLevelImplementationofAutomatic(Local)Variables
5.17LowLevelParameterImplementation
5.18ProcedurePointers
5.19ProcedureParameters
5.20UntypedReferenceParameters
5.21ManagingLargePrograms
5.22The#INCLUDEDirective
5.23IgnoringDuplicate#INCLUDEOperations
5.24UNITsandtheEXTERNALDirective
5.25NamespacePollution
5.26ForMoreInformation
6ARITHMETIC
6.1ChapterOverview
6.280x86IntegerArithmeticInstructions
6.3ArithmeticExpressions
6.4Logical(Boolean)Expressions
6.5MachineandArithmeticIdioms
6.6FloatingPointArithmetic
6.7ConvertingFloatingPointExpressionstoAssemblyLanguage
6.8HLAStandardLibrarySupportforFloatingPointArithmetic
6.9PuffingItAllTogether
7LOWLEVELCONTROLSTRUCTURES
7.1ChapterOverview
7.2LowLevelControlStructures
7.3StatementLabels
7.4UnconditionalTransferofControl(JMP)
7.5TheConditionalJumpInstructions
7.6"MediumLevel"ControlStructures:JTandJF
7.7ImplementingCommonControlStructuresinAssemblyLanguage
7.8IntroductiontoDecisions
7.9StateMachinesandIndirectJumps
7.10SpaghettiCode
7.11Loops
7.12performanceImprovements
7.13HybridControlStructuresinHLA
7.14ForMoreInformation
8FILES
8.1ChapterOverview
8.2FileOrganization
8.3SequentialFiles
8.4RandomAccessFiles
8.5ISAM(IndexedSequentialAccessMethod)Files
8.6TruncatingaFile
8.7ForMoreInformation
9ADVANCEDARITHMETIC
9.1ChapterOverview
9.2MultiprecisionOperations
9.3OperatingonDifferent-SizedOperands
9.4DecimalArithmetic
9.5Tables
9.6ForMoreInformation
10MACROSANDTHEHLACOMPILETIMELANGUAGE
10.1ChapterOverview
10.2IntroductiontotheCompileTimeLanguage(CTL)
10.3The#PRINTand#ERRORStatements
10.4CompileTimeConstantsandVariables
10.5CompileTimeExpressionsandOperators
10.6CompileTimeFunctions
10.7ConditionalCompilation(CompileTimeDecisions)
10.8RepetitiveCompilation(CompileTimeLoops)
10.9Macros(CompileTimeProcedures)
10.10WritingCompileTime"Programs"
10.11UsingMacrosinDifferentSourceFiles
10.12ForMoreInformation
11BITMANIPULATION
11.1ChapterOverview
11.2WhatIsBitData,Anyway?
11.3InstructionsThatManipulateBits
11.4TheCarryFlagasaBitAccumulator
11.5PackingandUnpackingBitStrings
11.6CoalescingBitSetsandDistributingBitStrings
11.7PackedArraysofBitStrings
11.8SearchingforaBit
11.9CountingBits
11.10ReversingaBitString
11.11MergingBitStrings
11.12ExtractingBitStrings
11.13SearchingforaBitPattern
11.14TheHLAStandardLibraryBitsModule
11.15ForMoreInformation
12THESTRINGINSTRUCTIONS
12.1ChapterOverview
12.2The80x86StringInstructions
12.3Performanceofthe80x86StringInstructions
12.4ForMoreInformation
13THEMMXINSTRUCTIONSET
13.1ChapterOverview
13.2DeterminingWhetheraCPUSupportstheMMXInstructionSet
13.3TheMMXProgrammingEnvironment
13.4ThePurposeoftheMMXInstructionSet
13.5SaturationArithmeticandWrap-AroundMode
13.6MMXInstructionOperands
13.7MMXTechnologyInstructions
13.8TheMMXProgrammingParadigm
13.9ForMoreInformation
14CLASSESANDOBJECTS
14.1ChapterOverview
14.2GeneralPrinciples
14.3ClassesinHLA
14.4Objects
14.5Inheritance
14.6Overriding
14.7VirtualMethodsvs.StaticProcedures
14.8WritingClassMethodsandProcedures
14.9ObjectImplementation
14.10ConstructorsandObjectInitialization
14.11Destructors
14.12HLA's"_initialize_"and"_finalize_"Strings
14.13AbstractMethods
14.14Run-TimeTypeInformation(RTTI)
14.15CallingBaseClassMethods
14.16ForMoreInformation
15MIXEDLANGUAGEPROGRAMMING
15.1ChapterOverview
15.2MixingHLAandMASM/GasCodeintheSameProgram
15.3ProgramminginDelphi/KylixandHLA
15.4ProgramminginC/C++andHLA
15.5ForMoreInformation
AASCIICHARACTERSET
BTHE80X86INSTRUCTIONSET
INDEX

相關詞條

熱門詞條

聯絡我們