关闭

关闭

封号提示

内容

首页 professional assembly language.pdf

professional assembly language.pdf

professional assembly language.…

上传者: 我是谁是我 2012-05-14 评分1 评论0 下载47 收藏0 阅读量397 暂无简介 简介 举报

简介:本文档为《professional assembly languagepdf》,可适用于高等教育领域,主题内容包含ProfessionalAssemblyLanguageRichardBlumffirsqxd:AMPageiiiffirsqxd:AMPageii符等。

ProfessionalAssemblyLanguageRichardBlumffirsqxd:AMPageiiiffirsqxd:AMPageiiProfessionalAssemblyLanguageffirsqxd:AMPageiffirsqxd:AMPageiiProfessionalAssemblyLanguageRichardBlumffirsqxd:AMPageiiiProfessionalAssemblyLanguagePublishedbyWileyPublishing,IncCrosspointBoulevardIndianapolis,INwwwwileycomCopyrightbyWileyPublishing,Inc,Indianapolis,IndianaAllrightsreservedPublishedsimultaneouslyinCanadaISBN:ManufacturedintheUnitedStatesofAmericaMASWQRQVINNopartofthispublicationmaybereproduced,storedinaretrievalsystemortransmittedinanyformorbyanymeans,electronic,mechanical,photocopying,recording,scanningorotherwise,exceptaspermittedunderSectionsoroftheUnitedStatesCopyrightAct,withouteitherthepriorwrittenpermissionofthePublisher,orauthorizationthroughpaymentoftheappropriatepercopyfeetotheCopyrightClearanceCenter,RosewoodDrive,Danvers,MA,(),fax()RequeststothePublisherforpermissionshouldbeaddressedtotheLegalDepartment,WileyPublishing,Inc,CrosspointBlvd,Indianapolis,IN,(),fax(),email:brandreviewwileycomLIMITOFLIABILITYDISCLAIMEROFWARRANTY:THEPUBLISHERANDTHEAUTHORMAKENOREPRESENTATIONSORWARRANTIESWITHRESPECTTOTHEACCURACYORCOMPLETENESSOFTHECONTENTSOFTHISWORKANDSPECIFICALLYDISCLAIMALLWARRANTIES,INCLUDINGWITHOUTLIMITATIONWARRANTIESOFFITNESSFORAPARTICULARPURPOSENOWARRANTYMAYBECREATEDOREXTENDEDBYSALESORPROMOTIONALMATERIALSTHEADVICEANDSTRATEGIESCONTAINEDHEREINMAYNOTBESUITABLEFOREVERYSITUATIONTHISWORKISSOLDWITHTHEUNDERSTANDINGTHATTHEPUBLISHERISNOTENGAGEDINRENDERINGLEGAL,ACCOUNTING,OROTHERPROFESSIONALSERVICESIFPROFESSIONALASSISTANCEISREQUIRED,THESERVICESOFACOMPETENTPROFESSIONALPERSONSHOULDBESOUGHTNEITHERTHEPUBLISHERNORTHEAUTHORSHALLBELIABLEFORDAMAGESARISINGHEREFROMTHEFACTTHATANORGANIZATIONORWEBSITEISREFERREDTOINTHISWORKASACITATIONANDORAPOTENTIALSOURCEOFFURTHERINFORMATIONDOESNOTMEANTHATTHEAUTHORORTHEPUBLISHERENDORSESTHEINFORMATIONTHEORGANIZATIONORWEBSITEMAYPROVIDEORRECOMMENDATIONSITMAYMAKEFURTHER,READERSSHOULDBEAWARETHATINTERNETWEBSITESLISTEDINTHISWORKMAYHAVECHANGEDORDISAPPEAREDBETWEENWHENTHISWORKWASWRITTENANDWHENITISREADForgeneralinformationonourotherproductsandservicesortoobtaintechnicalsupport,pleasecontactourCustomerCareDepartmentwithintheUSat(),outsidetheUSat()orfax()WileyalsopublishesitsbooksinavarietyofelectronicformatsSomecontentthatappearsinprintmaynotbeavailableinelectronicbooksBlum,RichardProfessionalassemblylanguageRichardBlumpcmIncludesindexISBN(paperwebsite)Assemblylanguage(Computerprogramlanguage)TitleQAAB'dcTrademarks:Wiley,theWileyPublishinglogo,Wrox,theWroxlogo,ProgrammertoProgrammerandrelatedtradedressaretrademarksorregisteredtrademarksofJohnWileySons,Incandoritsaffiliates,intheUnitedStatesandothercountries,andmaynotbeusedwithoutwrittenpermissionAllothertrademarksarethepropertyoftheirrespectiveownersWileyPublishing,Inc,isnotassociatedwithanyproductorvendormentionedinthisbookffirsqxd:AMPageivAbouttheAuthorRichardBlumhasworkedforalargeUSgovernmentorganizationformorethanyearsDuringthattime,hehashadtheopportunitytoprogramutilitiesinvariousprogramminglanguages:C,C,Java,andMicrosoftVBNETandC#Withthisexperience,RichhasoftenfoundthebenefitofreviewingassemblylanguagecodegeneratedbycompilersandutilizingassemblylanguageroutinestospeeduphigherlevellanguageprogramsRichhasabachelorofsciencedegreeinelectricalengineeringfromPurdueUniversity,whereheworkedonmanyassemblylanguageprojects(Ofcourse,thiswasbackintheeightbitprocessordays)HealsohasamasterofsciencedegreeinmanagementfromPurdueUniversity,specializinginManagementInformationSystemsWhenRichisnotbeingacomputernerd,heiseitherplayingelectricbassforthechurchworshipbandorspendingtimewithhiswife,Barbara,andtwodaughters,KatieJaneandJessicaffirsqxd:AMPagevffirsqxd:AMPageviCreditsExecutiveEditorChrisWebbDevelopmentEditorAdaobiObiTultonProductionEditorWilliamABartonTechnicalEditorPaulCarterCopyEditorLuannRouffEditorialManagerKathrynMalmBourgoineVicePresidentExecutiveGroupPublisherRichardSwadleyVicePresidentandPublisherJosephBWikertProjectCoordinatorErinSmithGraphicsandProductionSpecialistsJonelleBurnsAmandaCarterCarrieAFosterLaurenGoddardDennyHagerJoyceHaugheyQualityControlTechniciansDavidFaustSusanMoritzCarlWilliamPierceMediaDevelopmentSpecialistAngieDennyProofreadingTECHBOOKSProductionServicesIndexingRichardTEvansffirsqxd:AMPageviiffirsqxd:AMPageviiiThisbookisdedicatedtomywife,Barbara,andmydaughters,KatieJaneandJessica“TrustintheLordwithallyourheartandleannotonyourownunderstandinginallwaysacknowledgehim,andhewillmakeyourpathsstraight”Pr:(NIV)ffirsqxd:AMPageixffirsqxd:AMPagexAcknowledgmentsFirst,allhonor,glory,andpraisegotoGod,whothroughHisSonmakesallthingspossibleandgivesusthegiftofeternallifeManythanksgotothegreatteamofpeopleatJohnWileySonsPublishingThankstoChrisWebb,theacquisitionseditor,forofferingmetheopportunitytowritethisbookIamforeverindebtedtoAdaobiObiTulton,thedevelopmenteditor,forherworkinmakingthisbookpresentableandheroverallguidancethroughthebookwritingprocessAlso,manythanksgotoPaulCarter,thetechnicaleditorofthebookPaul’scommentsthroughoutthebookwereinvaluableinpresentingthetopicinthebestwayandforpointingoutmygoofsandblundersIwouldalsoliketothankCaroleMcClendonatWatersideProductions,Inc,forarrangingthisopportunityforme,andforhelpingoutinmywritingcareerFinally,Iwouldliketothankmyparents,MikeandJoyceBlum,fortheirdedicationandsupportwhileraisingme,andtomywife,Barbara,anddaughters,KatieJaneandJessica,fortheirlove,patience,andunderstanding,especiallywhileIwaswritingthisbookffirsqxd:AMPagexiffirsqxd:AMPagexiiContentsAcknowledgmentsxiContentsxiiiIntroductionxxiiiChapter:WhatIsAssemblyLanguageProcessorInstructionsInstructioncodehandlingInstructioncodeformatHighLevelLanguagesTypesofhighlevellanguagesHighlevellanguagefeaturesAssemblyLanguageOpcodemnemonicsDefiningdataDirectivesSummaryChapter:TheIAPlatformCorePartsofanIAProcessorControlunitExecutionunitRegistersFlagsAdvancedIAFeaturesThexfloatingpointunitMultimediaextensions(MMX)StreamingSIMDextensions(SSE)HyperthreadingTheIAProcessorFamilyIntelprocessorsNonIntelprocessorsSummaryftocqxd:AMPagexiiixivContentsChapter:TheToolsoftheTradeTheDevelopmentToolsTheAssemblerTheLinkerTheDebuggerTheCompilerTheobjectcodedisassemblerTheProfilerTheGNUAssemblerInstallingtheassemblerUsingtheassemblerAwordaboutopcodesyntaxTheGNULinkerTheGNUCompilerDownloadingandinstallinggccUsinggccTheGNUDebuggerProgramDownloadingandinstallinggdbUsinggdbTheKDEDebuggerDownloadingandinstallingkdbgUsingkdbgTheGNUObjdumpProgramUsingobjdumpAnobjdumpexampleTheGNUProfilerProgramUsingtheprofilerAprofileexampleACompleteAssemblyDevelopmentSystemThebasicsofLinuxDownloadingandrunningMEPISYournewdevelopmentsystemSummaryChapter:ASampleAssemblyLanguageProgramThePartsofaProgramDefiningsectionsDefiningthestartingpointCreatingaSimpleProgramTheCPUIDinstructionThesampleprogramftocqxd:AMPagexivxvContentsBuildingtheexecutableRunningtheexecutableAssemblingusingacompilerDebuggingtheProgramUsinggdbUsingCLibraryFunctionsinAssemblyUsingprintfLinkingwithClibraryfunctionsSummaryChapter:MovingDataDefiningDataElementsThedatasectionDefiningstaticsymbolsThebsssectionMovingDataElementsTheMOVinstructionformatsMovingimmediatedatatoregistersandmemoryMovingdatabetweenregistersMovingdatabetweenmemoryandregistersConditionalMoveInstructionsTheCMOVinstructionsUsingCMOVinstructionsExchangingDataThedataexchangeinstructionsUsingthedataexchangeinstructionTheStackHowthestackworksPUSHingandPOPingdataPUSHingandPOPingalltheregistersManuallyusingtheESPandEBPregistersOptimizingMemoryAccessSummaryChapter:ControllingExecutionFlowTheInstructionPointerUnconditionalBranchesJumpsCallsInterruptsftocqxd:AMPagexvxviContentsConditionalBranchesConditionaljumpinstructionsThecompareinstructionExamplesofusingtheflagbitsLoopsTheloopinstructionsAloopexamplePreventingLOOPcatastrophesDuplicatingHighLevelConditionalBranchesifstatementsforloopsOptimizingBranchInstructionsBranchpredictionOptimizingtipsSummaryChapter:UsingNumbersNumericDataTypesIntegersStandardintegersizesUnsignedintegersSignedintegersUsingsignedintegersExtendingintegersDefiningintegersinGASSIMDIntegersMMXintegersMovingMMXintegersSSEintegersMovingSSEintegersBinaryCodedDecimalWhatisBCDFPUBCDvaluesMovingBCDvaluesFloatingPointNumbersWhatarefloatingpointnumbersStandardfloatingpointdatatypesIAfloatingpointvaluesDefiningfloatingpointvaluesinGASMovingfloatingpointvaluesUsingpresetfloatingpointvaluesftocqxd:AMPagexvixviiContentsSSEfloatingpointdatatypesMovingSSEfloatingpointvaluesConversionsConversioninstructionsAconversionexampleSummaryChapter:BasicMathFunctionsIntegerArithmeticAdditionSubtractionIncrementinganddecrementingMultiplicationDivisionShiftInstructionsMultiplybyshiftingDividingbyshiftingRotatingbitsDecimalArithmeticUnpackedBCDarithmeticPackedBCDarithmeticLogicalOperationsBooleanlogicBittestingSummaryChapter:AdvancedMathFunctionsTheFPUEnvironmentTheFPUregisterstackTheFPUstatus,control,andtagregistersUsingtheFPUstackBasicFloatingPointMathAdvancedFloatingPointMathFloatingpointfunctionsPartialremaindersTrigonometricfunctionsLogarithmicfunctionsFloatingPointConditionalBranchesTheFCOMinstructionfamilyTheFCOMIinstructionfamilyTheFCMOVinstructionfamilyftocqxd:AMPagexviixviiiContentsSavingandRestoringtheFPUStateSavingandrestoringtheFPUenvironmentSavingandrestoringtheFPUstateWaitingversusNonwaitingInstructionsOptimizingFloatingPointCalculationsSummaryChapter:WorkingwithStringsMovingStringsTheMOVSinstructionTheREPprefixOtherREPinstructionsStoringandLoadingStringsTheLODSinstructionTheSTOSinstructionBuildingyourownstringfunctionsComparingStringsTheCMPSinstructionUsingREPwithCMPSStringinequalityScanningStringsTheSCASinstructionScanningformultiplecharactersFindingastringlengthSummaryChapter:UsingFunctionsDefiningFunctionsAssemblyFunctionsWritingfunctionsAccessingfunctionsFunctionplacementUsingregistersUsingglobaldataPassingDataValuesinCStyleRevisitingthestackPassingfunctionparametersonthestackFunctionprologueandepilogueDefininglocalfunctiondataftocqxd:AMPagexviiixixContentsCleaningoutthestackAnexampleWatchingthestackinactionUsingSeparateFunctionFilesCreatingaseparatefunctionfileCreatingtheexecutablefileDebuggingseparatefunctionfilesUsingCommandLineParametersTheanatomyofaprogramAnalyzingthestackViewingcommandlineparametersViewingenvironmentvariablesAnexampleusingcommandlineparametersSummaryChapter:UsingLinuxSystemCallsTheLinuxKernelPartsofthekernelLinuxkernelversionSystemCallsFindingsystemcallsFindingsystemcalldefinitionsCommonsystemcallsUsingSystemCallsThesystemcallformatAdvancedSystemCallReturnValuesThesysinfosystemcallUsingthereturnstructureViewingtheresultsTracingSystemCallsThestraceprogramAdvancedstraceparametersWatchingprogramsystemcallsAttachingtoarunningprogramSystemCallsversusCLibrariesTheClibrariesTracingCfunctionsComparingsystemcallsandClibrariesSummaryftocqxd:AMPagexixxxContentsChapter:UsingInlineAssemblyWhatIsInlineAssemblyBasicInlineAssemblyCodeTheasmformatUsingglobalCvariablesUsingthevolatilemodifierUsinganalternatekeywordExtendedASMExtendedASMformatSpecifyinginputandoutputvaluesUsingregistersUsingplaceholdersReferencingplaceholdersAlternativeplaceholdersChangedregisterslistUsingmemorylocationsUsingfloatingpointvaluesHandlingjumpsUsingInlineAssemblyCodeWhataremacrosCmacrofunctionsCreatinginlineassemblymacrofunctionsSummaryChapter:CallingAssemblyLibrariesCreatingAssemblyFunctionsCompilingtheCandAssemblyProgramsCompilingassemblysourcecodefilesUsingassemblyobjectcodefilesTheexecutablefileUsingAssemblyFunctionsinCProgramsUsingintegerreturnvaluesUsingstringreturnvaluesUsingfloatingpointreturnvaluesUsingmultipleinputvaluesUsingmixeddatatypeinputvaluesUsingAssemblyFunctionsinCProgramsCreatingStaticLibrariesWhatisastaticlibraryThearcommandftocqxd:AMPagexxxxiContentsCreatingastaticlibraryfileCompilingwithstaticlibrariesUsingSharedLibrariesWhataresharedlibrariesCreatingasharedlibraryCompilingwithasharedlibraryRunningprogramsthatusesharedlibrariesDebuggingAssemblyFunctionsDebuggingCprogramsDebuggingassemblyfunctionsSummaryChapter:OptimizingRoutinesOptimizedCompilerCodeCompileroptimizationlevelCompileroptimizationlevelCompileroptimizationlevelCreatingOptimizedCodeGeneratingtheassemblylanguagecodeViewingoptimizedcodeRecompilingtheoptimizedcodeOptimizationTricksOptimizingcalculationsOptimizingvariablesOptimizingloopsOptimizingconditionalbranchesCommonsubexpressioneliminationSummaryChapter:UsingFilesTheFileHandlingSequenceOpeningandClosingFilesAccesstypesUNIXpermissionsOpenfilecodeOpenerrorreturncodesClosingfilesWritingtoFilesAsimplewriteexampleChangingfileaccessmodesHandlingfileerrorsftocqxd:AMPagexxixxiiContentsReadingFilesAsimplereadexampleAmorecomplicatedreadexampleReading,Processing,andWritingDataMemoryMappedFilesWhatarememorymappedfilesThemmapsystemcallmmapassemblylanguageformatAnmmapexampleSummaryChapter:UsingAdvancedIAFeaturesABriefReviewofSIMDMMXSSESSEDetectingSupportedSIMDOperationsDetectingsupportSIMDfeatureprogramUsingMMXInstructionsLoadingandretrievingpackedintegervaluesPerformingMMXoperationsUsingSSEInstructionsMovingdataProcessingdataUsingSSEInstructionsMovingdataProcessingdataSSEInstructionsSummaryIndexftocqxd:AMPagexxiiIntroductionAssemblylanguageisoneofthemostmisunderstoodprogramminglanguagesinuseWhenthetermassemblylanguageisused,itofteninvokestheideaoflowlevelbitshufflingandporingoverthousandpageinstructionmanualslookingfortheproperinstructionformatWiththeproliferationoffancyhighlevellanguagedevelopmenttools,itisnotuncommontoseethephrase“assemblylanguageprogrammingisdead”popupamongvariousprogrammingnewsgroupsHowever,assemblylanguageprogrammingisfarfromdeadEveryhighlevellanguageprogrammustbecompiledintoassemblylanguagebeforeitcanbelinkedintoanexecutableprogramForthehighlevellanguageprogrammer,understandinghowthecompilergeneratestheassemblylanguagecodecanbeagreatbenefit,bothfordirectlywritingroutinesinassemblylanguageandforunderstandinghowthehighlevellanguageroutinesareconvertedtoassemblylanguagebythecompilerWhoThisBookIsForTheprimarypurposeofthisbookistoteachhighlevellanguageprogrammershowtheirprogramsareconvertedtoassemblylanguage,andhowthegeneratedassemblylanguagecodecanbetweakedThatsaid,themainaudienceforthisbookisprogrammersalreadyfamiliarwithahighlevellanguage,suchasC,C,orevenJavaThisbookdoesnotspendmuchtimeteachingbasicprogrammingprinciplesItassumesthatyouarealreadyfamiliarwiththebasicsofcomputerprogramming,andareinterestedinlearningassemblylanguagetounderstandwhatishappeningunderneaththehoodHowever,ifyouarenewtoprogrammingandarelookingatassemblylanguageprogrammingasaplacetostart,thisbookdoesnottotallyignoreyouItispossibletofollowalonginthechaptersfromthestarttothefinishandobtainabasicknowledgeofhowassemblylanguageprogramming(andprogrammingingeneral)worksEachofthetopicspresentedincludesexamplecodethatdemonstrateshowtheassemblylanguageinstructionsworkIfyouarecompletelynewtoprogramming,Ire

类似资料

编辑推荐

辩论赛评分打分标准.doc

河洛精蕴.pdf

Collective Action and the Evolution of Social Norms.pdf

图南志.txt

李(下册).pdf

职业精品

精彩专题

注册化工工程师,专业考试如何备考?

注册化工工程师含金量很高,在经济建设中从事化工工程(包括化工、石化、化纤、医药和轻化)设计及相关业务活动的专业技术人员必须要有这个证书。那么全国注册化工工程师报考条件,注册化工工程师考几年,注册化工工程师如何备考~等等这些问题你都知道吗?

用户评论

0/200
    暂无评论
上传我的资料

精选资料

热门资料排行换一换

  • 稻畑耕一郎:屈原否定论的系谱.p…

  • Karl Popper's Ph…

  • Paradigms in The…

  • Quantum Enigma 2…

  • Deduction, Compu…

  • 1326-05 三山王养静先生集…

  • 1326-08 逃虚子诗集.pdf

  • 此事难知.(元)王好古.pdf

  • 现代西方哲学新编_-赵敦华.pdf

  • 资料评价:

    / 577
    所需积分:1 立即下载

    意见
    反馈

    返回
    顶部