Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computer Science I CSC 135.

Similar presentations


Presentation on theme: "Computer Science I CSC 135."— Presentation transcript:

1 Computer Science I CSC 135

2 Computer Basics Hardware Software
CPU (central processing unit) – the “brains” Memory – where information is stored IO – input/output devices – for human interaction Software Computer Instructions – “programs” OS (operating system) Handles required “low level” tasks, provides a convenient interface for humans Application programs Human accessible - written for specific tasks

3 Modern computer, basic architecture
Inputs Outputs Central Processing Unit (CPU) Control Unit (CU) Arithmetic/Logic Unit (ALU) Internal Memory Registers Main Memory* Program Data Secondary Storage Inputs Keyboard, mouse, ... Outputs Monitor, printer, ... Secondary Storage Disk drive, USB stick, ... (permanent/long term) * shared program/data memory (Von Neumann)

4 Modern Computer H DRAM Hard Drive CPU

5 Binary Coding Binary is base 2 coding (vs. Decimal, which is base 10)
Counting in Binary 1 2 10 3 11 4 100 5 101 6 110 7 111 8 1000 9 1001 1010 Binary is base 2 coding (vs. Decimal, which is base 10) Base 10 has 10 digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Base 2 has only 2 “bits”: 0, 1 Bits is short for “binary digits” Why? It’s easier to make electronic circuits with 2 states rather than 10 Circuit only has to be “off” for zero or “on” for one – basically, a switch! Works well with transistors (also with vacuum tubes or relays)

6 Memory Stores instructions and data
Address Contents (0) (5) (1) (3) (2) (J) (=) (4) (a) (7) (6) (C) (9) (8) (#) Stores instructions and data Every memory location has a numerical address Contents are coded and stored in Binary format (ex: ascii) Binary: “base 2” (next slide) Byte Word Bit

7 High Level Languages Binary coded instructions/programs
Called “machine code” Low level (many steps to accomplish simple tasks) Arcane – difficult to work with Led to development of higher level languages C, C++, FORTRAN, Basic, Java, … Portable (same on any machine architecture) User friendly, intuitive -> A=A+B But, needs to be translated or “compiled” into machine code Used extensively for application software development

8 Operating Systems Designed for high level operation – two primary goals… Handles general computer management tasks Provides a friendly interface for human interaction Built-in OS programs Allow a user to perform useful tasks like: Open, save, move, copy a file Print information OS Examples Windows, Mac OS, Android, Unix/Linux, …

9 Operating Systems, Windows and Unix
Microsoft™ Windows Standard OS for PC’s GUI based, (originally built on DOS) GUI: Graphical User Interface Unix (used in this course) Command based Originally developed at Bell Labs™, written in C Used extensively in science, engineering, networking Linux is an open-source variant

10 Application programs Special programs installed on the computer to accomplish specific tasks Developed independently (not part of OS) Examples: Word processors, spreadsheets, presentations This course will focus on developing programs using Unix and C++

11 Software development method
Specify the problem requirements Analyze the problem develop a strategy to address it Design an algorithm (recipe) to solve the problem Implement the algorithm Write/develop the program! Test and verify the completed program Maintain and update the program

12 Steps in programming Write the program “compile” the program
Create a text file (Source File) in the programming language (emacs) “compile” the program Translate the source file into machine recognizable object code in an Object File Using a “Compiler” (g++) “link” the object code together with any other necessary Object Files Other Object Files may come from other Source Files or generic libraries Using a linker (g++) Creates an Executable File (can be run, or executed, on the computer) “load” (run) the Executable File Uses a Loader to actually load and run the program

13 Program Development Write the program “compile” the program
Create Source File “compile” the program Generate an Object File “link” Object Files, as needed Create an Executable File “load” (run) the Executable File

14 Professional Ethics Privacy and Misuse of Data Computer Hacking
Plagiarism and Software Piracy Misuse of a Computer Resource CSIT Academic Integrity Policy document Located on the Computer Science and Information Technology Department home page at:


Download ppt "Computer Science I CSC 135."

Similar presentations


Ads by Google