240 likes | 298 Views
Hello World 2. The hidden truth. The Evolution of Programming Languages. Early computers programmed in machine language To calculate wages = rate * hours in machine language: 100100 010001 //Load 100110 010010 //Multiply 100010 010011 //Store.
E N D
Hello World 2 The hidden truth
The Evolution of Programming Languages • Early computers programmed in machine language • To calculate wages = rate * hours in machine language: 100100 010001 //Load 100110 010010 //Multiply 100010 010011 //Store
The Evolution of Programming Languages (cont’d.) • Assembly language instructions are mnemonic • Assembler: translates a program written in assembly language into machine language
The Evolution of Programming Languages (cont’d.) • Using assembly language instructions, wages = rate • hourscan be written as: LOAD rate MULT hour STOR wages
The Evolution of Programming Languages (cont’d.) • High-level languages • Express algorithms at a more abstract level:int wages = rate * hours; • Ex: Basic, FORTRAN, COBOL, Pascal, C, C++, C#, and Java • http://oreilly.com/news/graphics/prog_lang_poster.pdf • http://www.digibarn.com/collections/posters/tongues/tongues.jpg • Current popularitieshttp://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
The Evolution of Programming Languages (cont’d.) • Compiler: translates a program written in a high-level language into machine language
Processing a C++ Program (cont’d.) • To execute a C++ program: • Create a text source program in C++ • Preprocessor directives begin with # and are processed by the preprocessor • Compiler: • Checks that the program obeys the language rules • Translates into machine language (object program)
Processing a C++ Program (cont’d.) • To execute a C++ program (cont'd.): • Linker: • Combines object program with other programs provided by the SDK to create executable code • Library: contains prewritten code you can use
Processing a C++ Program (cont’d.) • To execute a C++ program (cont'd.): • Loader: • Usually operating system • Loads executable program into main memory • The last step is to execute the program
How the code works: • # : preprocessordirective • Instructions to do before compiling • Bring the code from the library iostream into this file
How the code works: • Use all the names that are in the "standard" grouping in my program • Alternative:
How the code works: • ; statement terminator • Ends a "sentence of code"
How the code works: • int main() • The starting point of our program • Program instructions go inside { }
How the code works: • Comment : computer ignores • // : rest of line is comment • /* : everything is comment until */ • /** : special comment – machine readable
Documentation • Every file should have comment like this at top:
How the code works: • cout : console output
How the code works: • cout : console output << "send to output"
How the code works: • cout : console output << "send to output" "Hello" : a string – piece of text
How the code works: • cout : console output << "send to output" "Hello" : a string – piece of text endl : symbol representing "end of line"
How the code works: • return 0 • Program ran successfully • Anything BUT 0 indicates error
Working with numbers • We can output numbers to console: • Can do math using + - / * • Division may give interesting results…
Everything Counts • Indentation & Style matter (to humans) • Spelling & Capitalization matter (to humans & computers)
Errors • Syntax errors : • Errors that prevent code from being built • Runtime errors : • Errors that prevent running program from finishing • Logical errors : • Program is not doing what you meant it to
Exercises: • Write a program that displays: Your NameYour Birthdate • Write a program that displays: • Hints: have to write using / for division, * for multiplication, and ( ) for ordering