1MicrocomputerSystemsElectronicsystemsareusedforhandinginformationinthemostgeneralsense;thisinformationmaybetelephoneconversation,instrumentreadoracompany’saccounts,butineachcasethesamemaintypeofoperationareinvolved:theprocessing,storageandtransmissionofinformation.inconventionalelectronicdesigntheseoperationsarecombinedatthefunctionlevel;forexampleacounter,whetherelectronicormechanical,storesthecurrentandincrementsitbyoneasrequired.Asystemsuchasanelectronicclockwhichemployscountershasitsstorageandprocessingcapabilitiesspreadthroughoutthesystembecauseeachcounterisabletostoreandprocessnumbers.Presentdaymicroprocessorbasedsystemsdepartfromthisconventionalapproachbyseparatingthethreefunctionsofprocessing,storage,andtransmissionintodifferentsectionofthesystem.ThispartitioningintothreemainfunctionswasdevisedbyVonNeumannduringthe1940s,andwasnotconceivedespeciallyformicrocomputers.Almosteverycomputerevermadehasbeendesignedwiththisstructure,anddespitetheenormousrangeintheirphysicalforms,theyhaveallbeenofessentiallythesamebasicdesign.Inamicroprocessorbasedsystemtheprocessingwillbeperformedinthemicroprocessoritself.Thestoragewillbebymeansofmemorycircuitsandthecommunicationofinformationintoandoutofthesystemwillbebymeansofspecialinput/output(I/O)circuits.Itwouldbeimpossibletoidentifyaparticularpieceofhardwarewhichperformedthecountinginamicroprocessorbasedclockbecausethetimewouldbestoredinthememoryandincrementedatregularintervalsbutthemicroprocessor.However,thesoftwarewhichdefinedthesystem’sbehaviorwouldcontainsectionsthatperformedascounters.Theapparentlyratherabstractapproachtothearchitectureofthemicroprocessoranditsassociatedcircuitsallowsittobeveryflexibleinuse,sincethesystemisdefinedalmostentirelysoftware.Thedesignprocessislargelyoneofsoftwareengineering,andthesimilarproblemsofconstructionandmaintenancewhichoccurinconventionalengineeringareencounteredwhenproducingsoftware.Thefigure1.1illustrateshowthesethreesectionswithinamicrocomputerareconnectedintermsofthecommunicationofinformationwithinthemachine.Thesystemiscontrolledbythemicroprocessorwhichsupervisesthetransferofinformationbetween2itselfandthememoryandinput/outputsections.Theexternalconnectionsrelatetotherest(thatis,thenon-computerpart)oftheengineeringsystem.Fig.1.1ThreeSectionsofaTypicalMicrocomputerAlthoughonlyonestoragesectionhasbeenshowninthediagram,inpracticetwodistincttypesofmemoryRAMandROMareused.Ineachcase,theword‘memory’isratherinappropriatesinceacomputersmemoryismorelikeafilingcabinetinconcept;informationisstoredinasetofnumbered‘boxes’anditisreferencedbytheserialnumberofthe‘box’inquestion.MicrocomputersuseRAM(RandomAccessMemory)intowhichdatacanbewrittenandfromwhichdatacanbereadagainwhenneeded.Thisdatacanbereadbackfromthememoryinanysequencedesired,andnotnecessarilythesameorderinwhichitwaswritten,hencetheexpression‘random’accessmemory.AnothertypeofROM(ReadOnlyMemory)isusedtoholdfixedpatternsofinformationwhichcannotbeaffectedbythemicroprocessor;thesepatternsarenotlostwhenpowerisremovedandarenormallyusedtoholdtheprogramwhichdefinesthebehaviorofamicroprocessorbasedsystem.ROMscanbereadlikeRAMs,butunlikeRAMstheycannotbeusedtostorevariableinformation.SomeROMshavetheirdatapatternsputinduringmanufacture,whileothersareprogrammablebytheuserbymeansofspecialequipmentandarecalledprogrammableROMs.ThewidelyusedprogrammableROMsareerasablebymeansofspecialultravioletlampsandarereferredtoasEPROMs,shortforErasableProgrammableReadOnlyMemories.Othernewtypesofdevicecanbeerasedelectricallywithouttheneedforultravioletlight,whicharecalledElectricallyErasableProgrammableReadOnlyMemories,EEPROMs.Themicroprocessorprocessesdataunderthecontroloftheprogram,controllingtheflowofinformationtoandfrommemoryandinput/outputdevices.Someinput/outputdevicesaregeneral-purposetypeswhileothersaredesignedforcontrollingspecial3hardwaresuchasdiscdrivesorcontrollinginformationtransmissiontoothercomputers.MosttypesofI/Odevicesareprogrammabletosomeextent,allowingdifferentmodesofoperation,whilesomeactuallycontainspecial-purposemicroprocessorstopermitquitecomplexoperationstobecarriedoutwithoutdirectlyinvolvingthemainmicroprocessor.Themicroprocessorprocessesdataunderthecontroloftheprogram,controllingtheflowofinformationtoandfrommemoryandinput/outputdevices.Someinput/outputdevicesaregeneral-purposetypeswhileothersaredesignedforcontrollingspecialhardwaresuchasdiscdrivesorcontrollinginformationtransmissiontoothercomputers.MosttypesofI/Odevicesareprogrammabletosomeextent,allowingdifferentmodesofoperation,whilesomeactuallycontainspecial-purposemicroprocessorstopermitquitecomplexoperationstobecarriedoutwithoutdirectlyinvolvingthemainmicroprocessor.Themicroprocessor,memoryandinput/outputcircuitmayallbecontainedonthesameintegratedcircuitprovidedthattheapplicationdoesnotrequiretoomuchprogramordatastorage.Thisisusuallythecaseinlow-costapplicationsuchasthecontrollersusedinmicrowaveovensandautomaticwashingmachines.Theuseofsinglepackageallowsconsiderablecostsavingstoemadewhenarticlesaremanufacturedinlargequantities.Ast