Professional Documents
Culture Documents
Components of a PC
Output Devices
An interface by which the computer conveys the output to the user Example: monitor, printer
Main Memory
A semiconductor device which stores the information necessary for a program to run. 2 types
ROM (Read Only Memory)
Contains information that is necessary for the computer to boot up The information stays there permanently even when the computer is turned off.
Registers
Temporarily store instructions or data fetched from memory
Storage Devices
A magnetic device used to store a large amount of information. Store the software components or data needed for the computer to execute its tasks. Could be read only or writable. Example: Hard drive, CD ROM, floppy disks
Network Devices
Connect a computer to the other computers. Enable the users to access data or execute programs remotely. Example: modem, Ethernet card
Natural language
Our everyday-language; spoken and written
Not 100% needed to understand:
Do you want to buy this computer ? remains comprehensible
Syntax - Syntax are the rules to join words together in forming a correct expression or phrase. In natural languages it is often possible to assemble a sentence in more than one correct ways.
Formal Language
Language with limited, defined, words Each concatenation of words ('phrase') has a single, clearly defined meaning
no (miss-)interpretation possible
Sometimes called Context Free Language To 'talk' to a computer; to instruct a computer; our commands must be 100% clear and correct.
10
Imperative Language:
Tell what to do, but mainly how: Take number 1 and add the next number to it; then add the next number to the sum; and so on; until you have reached 10 as number to be added. Then print the sum of all numbers
11
What is Programming?
Programming is instructing a computer to do something for you with the help of a programming language The two roles of a programming language: Technical: It instructs the computer to perform tasks. Conceptual: It is a framework within which we organize our ideas about things and processes. In programming, we deal with two kind of things: Data - representing 'objects' we want to manipulate Procedures -'descriptions' or 'rules' that define how to manipulate data.
12
Programming Language
Formal Language used to communicate to a computer.
A programming language contains instructions for the computer to perform a specific action or a specific task:
'Calculate the sum of the numbers from 1 to 10 'Print I like programming 'Output the current time'
13
Programming Language
Can be classified into as a special-purpose and general-purpose programming languages. Special-purpose : is design for a particular type of application
Structured Query Language (SQL)
14
Machine Language
The only language that the processor actually 'understands Consists of binary codes: 0 and 1
Example: 00010101 11010001 01001100
Each of the lines above corresponds to a specific task to be done by the processor. Programming in machine code is difficult and slow since it is difficult to memorize all the instructions. Mistakes can happen very easily. Processor and Architecture dependent
Principles of Programming - NI July 2005 15
Assembly Language
Enables machine code to be represented in words and numbers. Example of a program in assembler language:
LOAD A, 9999 LOAD B, 8282 SUB B MOV C, A LOAD C, #0002 DIV A, C STORE A, 7002
Easier to understand and memorize (called Mnemonics), compared to machine code but still quite difficult to use. Processor and Architecture dependent
16
High-Level Language
Use more English words. They try to resemble English sentences. Therefore, it is easier to program in these languages. The programming structure is problem oriented - does not need to know how the computer actually executes the instructions. Processor independent - the same code can be run on different processors. Examples: Basic, Fortran, Pascal, Cobol, C, C++, Java A high level language needs to be analyzed by the compiler and then compiled into machine code so that it can be executed by the processor.
17
C Programming Language
Why 'C' ? Because based on 'B'; developed at Bell Laboratories
18
19
C An Imperative Language
C is a highly imperative language
We must tell it exactly how to do what; the means and functions to use; which libraries to use; when to add a new line; when an instruction is finished; in short: everything and anything
20
A Simple Program in C
#include <stdio.h> main() { printf("I like programming in C.\n"); }
21
main() {
}
End of Segment
Principles of Programming - NI July 2005
22
C Output
I like programming in C.
23
Summary
We have looked at some underlying hardware We have seen some different types of languages;
the relevance of semantics and syntax.
We have observed the detail necessary in an imperative language to instruct a computer properly. Finally, we examined the syntax to print a line of text to the screen of our computer.
24