80 likes | 162 Views
CS 13001. Computer Science I. Where did C++ come from?. BCPL was developed in 1967 as a language for writing operating systems and software compilers
E N D
CS 13001 Computer Science I
Where did C++ come from? • BCPL was developed in 1967 as a language for writing operating systems and software compilers • In 1970, the creators of the UNIX operating system needed a high-level language that provided enough power and flexibility for their task. They developed B (a derivative of BCPL) • In 1972, an enhanced and improved version of the language called C was used to code most of UNIX • most operating systems (one of the largest and most complicated pieces of software) are written in C or C++ • source code for Microsoft Windows Vista contains 50 million lines of mostly C/C++ code • source code of Red Hat Linux v.7.1 contains 30 million lines of C/C++ code
The Birth of C++ • C++ is an extension of C developed by Bjarne Stroustrup in the early 1980s • C/C++ are possibly the most popular programming languages in use today • C++ absorbed the best features of C and made a few additions to make it even more powerful and convenient to use • C was written to combine the ease of high-level language with the power of low-level language • with C it is very easy to write code that is difficult to understand and hard to debug • one of the major additions introduced by C++ is the use of OBJECTS.
Hardware • program - set of instructions to computer that does something useful. • software - collection of programs • hardware - physical devices that make up computer equipment • computer - PC/mainframes/workstations • computer contains 5 main components • CPU - follows the instructions and performs calculations specified by the program • input device - any device that allows outside world to communicate information to the computer • output device - any device that allows computer to communicate information to the outside world • main memory/RAM - a list of addressable numbered memory locations that computer can operate upon • bit - the least possible amount of information: 0 or 1 • byte - 8 bits • memory location - single (indivisible) portion of memory that holds data • address - number that identifies a memory location • secondary memory - memory that is used for keeping a permanent record of information - disks/data CDs/flash drives
Software • operating system - allocates computer resources, launches other programs and makes sure they work properly • program (again) - set of instructions for computer to follow • data - input to the program • running/executing program - performing program instructions on given data • natural language - language used by humans • high-level language - language (close to natural) that is understood by humans, C++ is a high-level language • low-level language (assembly) - a list of instructions a computer can follow : add X, Y, Z • machine language - list of instructions in binary format a computer understands 0101 0001 0002 0003 • compiler - a program that translates high-level language into low-level language • code - source (high-level language), object (low-level language) • library - set of previously developed routines • linker - program that takes object code, adds needed routines from libraries and produces executable code • executable code - can run on computer
C++ Program Layout • include directive - tells compiler where to find certain items about the program • main part (main function) - contains instructions for the computer, starts and ends with braces: {} • statement - single instruction to computer • each statement is ended with a semicolon ; • program consists of a sequence of statements • comment is a portion of a line ignored by the compiler - serves to make the code easier to understand by humans • breaks and indentation is for humans - compiler ignores them. Should make the program easier to read! #include <iostream> int main() { statement 1; // comment statement 2; ... }
First Program: helloWorld.cpp // displays a greeting // Michael Rothstein // 1/12/2014 #include <iostream> using namespace std; int main() { cout << "Hello, World!" << endl; } preprocessor directive comments function named main() indicates start of program output statement
Rules of Programming • syntax - the principles of constructing (structuring) the program • semantics – the meaning of the program and its parts • style – non-syntactic rules of program writing aimed at making a program easier to read and understand