Professional Documents
Culture Documents
07B11CI101
INTRODUCTION TO COMPUTERS AND
PROGRAMMING
Instructor : DR.SIDDAVATAM RAJESH,
Ph.D (BITS-PILANI)
ASST. PROFESSOR
DEPARTMENT OF CSE& IT, JUIT
Contact Mail : srajesh@juit.ac.in
1-1
1-2
Course Outline
1. Introduction : Bits Data Types & Operations
How do we represent information using electrical signals?
5.Assembly Language
How do we use processor instructions to implement
algorithms?
How do we write modular, reusable code? (subroutines)
Copy Rights DR. SIDDAVATAM RAJESH JAYPEE UNIV
1-3
Contd
6. Introduction to High-level Programming
How do we write programs in C?
How do we implement high-level programming constructs?
8. Introduction to C Programming
The C Programming Language
1-4
Contd
11. Decision Making & Looping
How do use Decision Making & looping in C ?
12. Arrays
How do use Arrays in C?
1-5
Chapter 1
Introduction
1-7
1-8
=
PDA
=
Workstation
Supercomputer
1-9
Turing Machine
Mathematical model of a device that can perform
any computation Alan Turing (1937)
ability to read/write symbols on an infinite tape
state transitions, based on current state and symbol
a,b
Tadd
a+b
Tmul
a,b
ab
1-10
c(a+b)
U is programmable so is a computer!
instructions are part of the input data
a computer can emulate a Universal Turing Machine
1-11
cost
cell phone, automotive engine controller, ...
power
cell phone, handheld video game, ...
1-12
1-13
Problem
Problem
Software Design:
choose algorithms and data structures
Algorithm
Algorithm
Programming:
use language to express design
Program
Program
Instr
Instr Set
Set
Architecture
Architecture
Compiling/Interpreting:
convert language to
machine instructions
1-14
Microarch
Microarch
Circuits
Circuits
Devices
Devices
Processor Design:
choose structures to implement ISA
Logic/Circuit Design:
gates and low-level circuits to
implement components
Process Engineering & Fabrication:
develop and manufacture
lowest-level components
1-15
Algorithm
step-by-step procedure, guaranteed to finish
definiteness, effective computability, finiteness
Program
express the algorithm using a computer language
high-level language, low-level language
1-16
Logic Circuits
combine basic operations to realize microarchitecture
many different ways to implement a single function
(e.g., addition)
Devices
properties of materials, manufacturability
1-17
FORTRAN
PowerPC
Centrino
C++
Java
Intel x86
Atmel AVR
Pentium 4
Xeon
Ripple-carry adder
CMOS
Jacobi
iteration
Gaussian
elimination
Red-black SOR
Bipolar
Multigrid
Tradeoffs:
cost
performance
power
(etc.)
Carry-lookahead adder
GaAs
1-18