Computer Science 1A Introduction to Computer Science Computer Software Applications Topic 5 Ch 2 P1 A n n o u n c e m e n t s Quiz 4 on S W Networking Topic 5 Software Ch2 2 of 16 2 Basic Categories of Software S Wo h f a t t w a i r s e Applications software This is what we usually think of Programs for end users Examples MS office database programs word processors games instant messaging email browsers and etc Systems software The bridge between applications software and computer hardware Interact with the hardware at a low level very basic level Provides a high level environment in which we can run applications on Examples operating systems compilers assemblers etc Topic 5 Software Ch2 3 of 16 1 Topic 5 Software Ch2 c o m p I u m t a e g r i n e w i t a h o u t S y s t e m s The earliest computers were this way Remember the ENIAC Here s how it was programmed These women were the operating system s o f t w a r e http www berkeleyprep org webhouse bh html histpic htm E N I A C 1 9 4 6 4 of 16 5 of 16 ENIAC 1946 Electronic Numerical Integrator and Computer The procedure for instructing the ENIAC in its routine then consists of setting program switches on the units so that when stimulated by a program input pulse the program controls will cause the units to carry out a set of specific operations Adele Goldstine 1946 Programmers Betty Jean Jennings left and Fran Bilas right operate the ENIAC s main control panel at the Moore School of Electrical Engineering U S Army photo from the archives of the ARL Technical Library Topic 5 Software Ch2 6 of 16 2 W h a t s y d s o t e o m p s e r d a o t i n g Manages the system and applications Organizing files folders etc Manage downloading Scheduling programs on the processor Interfacing with the internet Managing communication with peripherals Providing security and lots more GUI windows 7 of 16 Topic 5 Software Ch2 C o m p i l e r s Software that translates high level programming languages such as c java etc into the lowlevel machine language that is understood by a computer processor INPUT High Level Language source code If hours 40 overtime hours 40 1 5 payrate else overtime 0 Translates the program into a Low level language OUTPUT Machine Language object code Compiler 1001 0101 1101 0001 0011 0011 0101 0110 Topic 5 Software Ch2 C o m p i l e r s 8 of 16 high level programming language must be automatically translatable to low level code this puts constraints on the expressiveness of computer programming languages Natural Language is Vague Computers don t do well with non precise instructions programming languages have to be very precise Topic 5 Software Ch2 9 of 16 3 P u t t i n g a l l t o g e t i h t e r P u t t i n g a l l t o g e t i h t e r L a n g u a g e s L o w L e e v x e p l a n d e d 1 an application is written in a high level programming language e g c 2 the code is translated to machine language by a compiler 3 when you want to run the application the operating system loads the code into RAM random access memory 4 the fetch decode execute cycle is performed let s look at an example 10 of 16 Topic 5 Software Ch2 Summary If hours 40 overtime hours 40 1 5 payrate else overtime 0 1001 0101 1101 0001 0011 0011 0101 0110 Compiler Translates the program to a low level language Object Code Executable File Source Code Operating system Loads the program into RAM then the CPU executes it Topic 5 Software Ch2 Machine Language Assembly Language CPU Fetch Decode Execute cycle begins 11 of 16 Binary code Uses abbreviations called opcode Assembler Translates assembly code into machine code binary Topic 5 Software Ch2 13 of 16 4 T r a n s l a t i n g c o d e Compilers Converts entire program source code into machine language code object code Both the source code and object code are stored on the disk We execute or run the object code Object code is loaded into memory RAM Machine language is processor specific Interpreter Translates one sentence at a time HTML Source program is interpreted every time No object code is produced 14 of 16 Topic 5 Software Ch2 W h a b t e w u e s i w n i g l l We us an editor to type in commands Source code Compiler We will use eclipse a C program Translates the source code to binary provided there are no errors it will check for errors Object code Linker A C program in binary code Links your code with libraries turns your object code into executable code we see this as a exe file Libraries Predefined code that we include in a header file 15 of 16 Topic 5 Software Ch2 P r o c e s s c o m p i l i n g f o C r Source file Header file Compiler Other Object Code Object Code Linker Executable File Topic 5 Software Ch2 16 of 16 5
View Full Document
Unlocking...