Chapter 1 - Intro To Programming Language
Chapter 1 - Intro To Programming Language
Foundation
Computing II
Chapter 1
Introduction to Computer
and Programming
Zamri bin Abu Bakar
Language PUSAT ASASI
UiTM PUNCAK ALAM
2
Objectives :
Revision :
Overview of computer and its application
Computer components
Evolution of Programming Languages
Introduction
to C Programming
The Programming Process using C
programming
4
Introduction
Computer an electronic devices consist of
hardware and software and perform tasks and
produce the output
Categories of Computers
Individuals
Desktop : PC, iMac
Personal Digital Assistant (PDA)
IPhone or Smart Phone
Organizations
Supercomputers
Mainframes
Servers
Minicomputers
6
Computer Components
Computer
Hardware Software
Any part of the computer The set of computer
We can physically touch programs that enables the
Input and Output devices hardware to perform
different tasks.
Application
System
7
Computer Hardware
(CPU)
Theheart of a computer
Comprised of 2 parts:-
Control Unit
Coordinate all the computer
instructions
Machine cycle Fetch, Decode,
Execute, Store
Arithmetic & Logic Unit (ALU)
To
perform mathematical
operations
9
Encoding Scheme
Each printable and non-printable character is
represented by unique number in memory.
Encoding method to encode character to unique
number
Common Encoding Scheme/Method
ASCII (American Standard Code for Information Interchange)
8 bits equals one character; 128 characters; used by
minicomputers and personal computers.
EBCDIC (Extended Binary Coded Decimal Interchange Code)
8 bits equals one character; 256 characters; used by
mainframe computers and IBM.
Unicode
16 bits (2 bytes ) equals one character; 65536 characters;
used for foreign language symbols.
Zamri Abu Bakar CSC099 Sem 2 2012/2013
12
Computer Software
Software
program1
Error free
Compiled Executable
Programmer file (*.exe)
writes program & debug
16
Generation of Programming
language
Machine language
Assembly language
High Level language
Compiler
machine language program
Computers understand
People understand
binary(11011)
program
18 3/27/17
Machine Language
Binary number codes understood by a specific CPU.
Lowest level of language
Represent data and program instructions as 1s and 0s
The only language that computer directly understand
(Do not require translator)
Not convenient to read and use.
First generation language
Machine - dependent
Example:
To calculate wages = rates * hours in machine
language:
100100 010001 //Load
100110 010010 //Multiply
100010 010011 //Store
19 3/27/17
Assembly Language
Second generation language
Developed to replace 1s and 0s use in machine
language.
Use mnemonic codes : abbreviations that easy to
remember
Requires a translator to translate the assembly
program into machine language ( assembler).
Difficult to learn
Machine-dependent
A for Add
C for Compare
MP for Multiply
20 3/27/17
Comparison
A Machine-language Program Fragment and Its
Assembly-Language Equivalent
Memory Address Machine-Language Assembly-Language
Instructions Instructions
Computer
language
evolution
Machine Language
Series of 1s and 0s (binary numbers)
1011010000000101
Difficult to write.
Low level language.
Computer only understand this language without
translation.
23
Assembly Language
Low level language.
Unique to particular computer.
Use mnemonics symbols. E.g. MUL Multiply
Easier to understand.
A program is written in source code (text file) and
translated into machine language by an
assembler.
24 3/27/17
Examples :
To calculate the wages = rates * hours
Machine language
Assembly language
LOAD rate
MULT hour
STOR wages
Language Translator
Program need to translate because computer only understand machine
language
Assembler
Used in assembly language for translate the language to machine
language
Interpreter
Translates one program code statement at a time.
Immediately displays feedback when it finds error.
Compiler
Translating the source code from its original language into
machine code.
Converts the entire source program into machine language at one
time
Interactive Development Environment (IDE)
A program that provides user with an environment for editing,
debugging and compiling the source code the program on- line.
30
Natural Language
o Like our natural language (such as Malay,
English, French, or Chinese)
o Its use is still quite limited.
31
C Language
Is a structured programming language
High level language
Is a case sensitive language
Developed by Dennis Rithcie (1972)
ANSI define a standard on C (1983),
which was followed by ISO (1990)
Designed for writing system software
32
Example of a C Program
33
Program Development
Coding Schemes
ASCII (American Standard Code for Information
Interchange)
8 bits equals one character; 128 characters;
used by minicomputers and personal
computers.
EBCDIC (Extended Binary Coded Decimal
Interchange Code)
8 bits equals one character; 256 characters;
used by mainframe computers and IBM.
Unicode
16 bits (2 bytes ) equals one character; 65536
characters; used for foreign language symbols.
36
High Level
Language to
Machine
Language
(Executable file)
Programmer
Code
Code
Executable Code
37
Integrated Development
Environments (IDEs)
An integrated development environment, or IDE,
combine all the tools needed to write, compile,
and debug a program into a single software
application.
Examples are Code Blocks, Microsoft Visual C,
Borland C Builder, CodeWarrior, etc.
39
References
CHow to Program, Edition, Pearson, Paul
Deitel and Harvey Deitel
C Programming a Q & A Approach, Mc
Graw Hill, H.H. Tan, T.B. DOrazio, S.H.Or
and Marian M.Y.Choy
C Program Design for Engineers, 2nd
Edition, Addison Wesley Jeri R. Hanly and
Eliot B. Koffman
41
Self Exercises:
1. What is computer language?
2. Briefly explain what are the different types of computer
language?
3. What Is a Computer Language Translator?
4. What is the very first computer programming language in
history?
5. How many types of computer language?
6. State the differences between Machine Language and
Assembly Language. Give an example of instructions for each
language.
7. What is IDEs?