Sie sind auf Seite 1von 40

CSC099

Foundation
Computing II

Chapter 1

Introduction to Computer
and Programming
Teh FaradillaAbdul Rahman
Language PUSAT ASASI
UiTM PUNCAK ALAM
2

Lecturer Details
Name: Teh Faradilla binti Abdul
Rahman
Room: FSK 1,5, level 7, no.12
Contact nu: 03-3258 4932
Email address: dtextfara@gmail.com
3 November 4, 2017

Learning Outcomes :
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

Computer is a device that can perform


computation and logical decisions billion times
faster than human being can.

Programming Language language for


computer consist of a vocabulary and a set of
rules that can be understood by the computer
5

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
that can be physically touch programs that enables the
Input and Output devices hardware to perform
different tasks.
Application
System
7

Computer Hardware

Zamri Abu Bakar CSC099 Sem 2 2012/2013


8

Central Processing Unit (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

Main Memory (RAM)


Volatile
Coding Schemes
10

Each printable and non-printable character is


represented by unique number in memory.
Encoding method to encode character to unique
number

ASCII (American Standard Code for Information


Interchange)
7 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.
11
12

Computer Software

Software

System Software Application Software


Operating systems (OS) Microsoft Office
System utilities Adobe Photoshop
13 November 4, 2017

What is Programming Language?


A set of rules, words and symbols are used to
write a computer program telling a
computer what to do.
The source codes (program) are compiled and the
executable files (*.exe) are produced.

program1
Error free

Compiled Executable
Programmer file (*.exe)
writes program & debug
14

Why Study Programming


Languages?
provide you with a general body of
knowledge about programming languages
ability to reason critically about the
application of programming languages in
software engineering work.
15 November 4, 2017

Reasons for studying Concepts of


Programming Languages :
Increased capacity to express ideas and solve problem
Studying programming languages may increase the
capacity and ability of students to express their ideas in a
formal, computational form.

Increased ability to automate process


Programs are built mainly so that simple, or even
complicated processes to be executed automatically.
16

Type of programming languages


Low-level: Written mainly in binary or machine
code (0s/1s) .
High-level: closer to human language
17 November 4, 2017

Generation of Programming
language
Machine language
Assembly language
High Level language

program machine language

Compiler
machine language program
Computers understand
People understand
binary(11011)
program
18

History of Programming Languages

Computer
language
evolution

The only language understood by a computer is machine language

Machine Language Assembly Language

COBOL BASIC Fortran Smalltalk Ada

Visual Basic C and C++ Pascal Java


19 November 4, 2017

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
20 November 4, 2017

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

ADD for Addition


MULT for Multiply
21

Assembly Language
Low level language.
Unique to particular computer.
Use mnemonics symbols. E.g. MULT Multiply
Easier to understand.
A program is written in source code (text file) and
translated into machine language by an assembler.
22 November 4, 2017

Comparison
A Machine-language Program Fragment and Its
Assembly-Language Equivalent
Memory Address Machine-Language Assembly-Language
Instructions Instructions

00000000 00000000 CLA

00000001 00010101 ADD A

00000010 00010110 ADD B

00000011 00110101 STA A


23 November 4, 2017

High-Level Programming Language

Made easy for programmer to develop and


maintain program
Machine- independent (can run on may
different types of computers)
Have 3 categories : third, fourth and fifth
generation
Written in series of English-like words
Must be translated to machine code first
(Use translator)
24

High-Level Programming Language


Portable to many different computers.
Easier to read, write, and maintain than machine
and assembly languages.
Instruction are coded; programmers use this to
write programs.
Example : COBOL (Business), FORTRAN (Scientific),
BASIC, Pascal, C, C++, C#, Java etc.
Compiler/interpreter: translates a program (code)
written in a high-level language into machine
language
25 November 4, 2017

Some Well-Known High-Level


Programming Languages
Language Application Area Origin Name
FORTRAN Scientific Programming Formula Translation

COBOL Business data Processing Common Business-Oriented


Language
Lisp Artificial Intelligent List processing

C System Programming Predecessor Language was named B

Prolog Artificial Intelligent Logic Programming

C++ Support objects and object Incremental modification of C (++ is


oriented programming the C incremental operator)

Java Supports Web Programming Originally name Oak


26

Some Well-Known High-Level


Programming Languages
27

Examples :
To calculate the wages = rates * hours
Machine language
100100 010001 //Load
100110 010010 //Multiply
100010 010011 //Store

Assembly language
LOAD rate
MULT hour
STOR wages

High-level language C Programming


wages = rate * hours;
28 November 4, 2017

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
29

Natural Language
o Like our natural language (such as Malay, English,
French, or Chinese)
o Its use is still quite limited.
30

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
31

Example of a C Program
32

Program Development

A computer understands a program only if the


program is coded in its machine language.
Thus, programming language need to be
converted to machine language (executable file)
33

High Level Program to Executable


Code
1. Programmer create and edit text file containing
the program (source code) with a text editor and
save it into file (source file)
2. Run
1. preprocessor to process the preprocessor directives
(begin with #).
2. compiler to:
Check that the program obeys the rules
Translate into machine language (object
code)
3. linker to connect hardware-specific code to machine
instructions, producing an executable code.
3. Loader : Loads executable file into main memory
4. Execution : Execute the program
34

High Level
Language to
Machine
Language
(Executable file)

Programmer

Code

Code

Executable Code
35

Flow of Information During Program


Execution
36

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.
37

Code Blocks IDEs


38

Exercise
A _____________ translates high-level
language program into ___________.
A(n) _______ provides access to system
programs for editing and compiling.
A C program is saved on disk as a(n) ______
file.
The _______ find syntax error in the _________.
In high-level or assembly language, you can
reference data using ____________ rather
than memory cell address.
_____________ is composed for units such as
disk, flash memory, CDs or DVDs.
39 November 4, 2017

References
C How to Program, 7th 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
40

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?

Das könnte Ihnen auch gefallen