Electrical Engineering - Chapter 1: Computing Fundamentals

Stores information to be process or instructions to be executed Information stored in bits (binary digits) Two states: on or off Byte is 8 bits (character of information like ‘b’) Grouped into packets called cells or words Bit pattern is code

ppt32 trang | Chia sẻ: thuongdt324 | Lượt xem: 488 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Electrical Engineering - Chapter 1: Computing Fundamentals, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chapter 1 – Computing Fundamentals History of Electronic ComputersFirst computerABC (Atanasoff Berry Computer) at Iowa State U.1930’sSolved large numbers of simultaneous equationsFirst “all-purpose” computerENIAC (Electronic Numeric Integrator And Calculator)Main idea developed from ABC notesBoth had set wiring –data was input to memoryLesson 1.1John von NeumannMathematicianProposed alternative to “hard wiring”Introduced concept of stored program instructionsBoth data and instructions were storedLed to development of multipurpose computersLesson 1.1Computer CategoriesSupercomputersMainframe computersWorkstationsPersonal computers (microcomputers)LaptopsMore powerful than ENIACPalmtopsSpeed and size!Lesson 1.1ArchitectureFour main partsCPU (central processing unit)Main memoryControllersPeripheral devicesHardwareElectronic and mechanical devices integrated or connected to computerLesson 1.2Schematic MainMemoryControllersPeripheral DevicesCPUArithmetic Logic UnitRegisterRegisterRegisterControlUnitMotherboardLesson 1.2Main MemoryStores information to be process or instructions to be executedInformation stored in bits (binary digits)Two states: on or offByte is 8 bits (character of information like ‘b’)Grouped into packets called cells or wordsBit pattern is codeLesson 1.2Memory SizesRepresented by 2 raised to a power23 = 8 bits (byte)210 = kilobyteThousand 1,024220 = megabyteMillion 1,048,576230 = gigabyteBillion 1,073,741,824240 = terabyteTrillion 1,099,511,627,776Lesson 1.2Memory AccessRAMRandom access memoryAllows access to cells in no particular orderVolatileROMRead only memoryCannot be modified by userInformation is permanent (non-volatile)Serial accessSequence of cell followed to extract informationLesson 1.2Central Processing Unit (CPU)Control UnitControls activities of CPUDirects flow of instructionsCommunicates with ALURegistersRapid access memory cellsArithmetic-Logic Unit (ALU)Arithmetic operationsLogic operations (compares, etc)Lesson 1.2Peripheral DevicesTwo categoriesMass storageDisk drivesTape drivesCD drives, etc.Input-output (I/O)MonitorsKeyboardsPrintersSpeakers, etc.Lesson 1.2Mass Storage DevicesStore informationDevices that rotate, write to or read from called drivesOn/Off (binary)Magnetic spots on disks or tapePits or “lands” on CDs (optical disks)Lesson 1.2Major Differences between Main and Mass StorageSlower access in mass storage than mainMass storage portableMass storage usually have greater capacity and can hold large amounts of informationMain memory is volatile and disappears when power is off, but mass storage permanent (unless deliberately erased)Lesson 1.2Input-Output DevicesInputConvert information coming in to computer compatible formExamples: keyboards, scanners, microphonesOutputConvert computer codes into user understandable formatExamples: monitors, printers, speakersLesson 1.2ControllersCoordinate actions of peripheral devices with actions of computerConstant flow between peripheral equipment and controllerNeed to know what peripheral equipment is doingLesson 1.2NetworksGroups of individual computers and peripheral devices linked together to share information and resourcesTwo categoriesWide area network (WAN)Local area network (LAN)Topology is “shape” of connectionLesson 1.3Network TopologiesRingIrregular BusTreeLesson 1.3Data RepresentationEach bit is either on or off, 1 or 0ASCII code – 8 bits make a byteIntegers represented by base 2, binary systemEach place position is power of 2 (23+22+21+20)Two other number systems usedOctal (powers of 8)Hexadecimal (powers of 16)Lesson 1.4Memory AddressesEvery memory cell needs to be addressedBinary code represent address of cellOne cell can contain address of another memory cellLesson 1.4Programming LanguagesAssembly languageOne level above machine languageHigh-level languageDesigned to simplify writing programsFour typesProcedural (imperative)FunctionalDeclarativeObject oriented Lesson 1.5SoftwareSet of instructions read into computer’s memory and later executed on demandTwo typesSystemOperating systemsUtility programsLanguage translatorsApplicationLesson 1.6Operating System SoftwareSoftware written into memory upon startupInterface between user, computer and peripheralsTwo categoriesMultiple-user computersSingle-user computersLesson 1.6Utility ProgramsPerform basic operations necessary for performance of computer systemFile operationscreating, copying, saving deleting, merging, sortingEncapsulated with operating systemsLesson 1.6Language TranslatorsConvert programmer-made instructions (source code) into machine-language instructions (object code)Three typesAssemblers: Convert assembly language programs to object codeInterpreters: Converts an instruction to object code then executes itCompilers: Converts entire program to object codeLesson 1.6Integrated Development Environment (IDE)Full packageCompilerText editorDebugging toolsAllows creation, repeated execution and modification of a programHelps find violations of language rulesLesson 1.6Application SoftwareMany types existExamples of common typesGamesWord processingDatabase managementGraphicsProgram solves practical problem or does specific tasksLesson 1.6Software EngineeringDescribes process of software developmentProcess involves many steps (Figure 1.10)Definition of problemDesign scheme (breaking into modules)Coding modulesTestingAssemble modulesTest until working correctlyProgram never “done”Lesson 1.7Structured ProgrammingTop-down designDefines all tasks program is to performTasks separated and functions developedCan be designed separatelyTwo typesLibraryIncluded in C++ development environmentProgrammer-definedCustom made by userLesson 1.7Development of C++ LanguageMiddle 1980s at Bell LaboratoriesBjarne StroustrupImprovement upon C languageStandardized in 1997American National Standards Institute (ANSI)International Standards Organization (ISO) Object-orientedLesson 1.7C++ Development EnvironmentPrimary goal to produce executable fileMachine language instructionsAllows user toCreate source codeTest itModify itConvert it to executable formatLesson 1.7C++ IDE OperationsEditing text to create source codePreprocessing source codeCompiling source code and code attached by preprocessorLinking object code generated in step 3 with other object codeLesson 1.7SummaryComputer historyBasic computer architectureHow bits are storedDifferences between programming languagesSoftware engineeringC++ language backgroundUsing IDE to create executable programsLearned about:Chapter 1