0% found this document useful (0 votes)
232 views

Introduction To Computer Programming: BITS Pilani

This document provides an overview of an introduction to computer programming lecture. It discusses general course information, the objectives of learning programming and C language, basics of computers and computing, an introduction to programming languages including machine language, assembly language, and high-level languages. It also provides an introduction to the Unix operating system, including the kernel, shell, and common shell commands.

Uploaded by

ARYAN CHAVAN
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
232 views

Introduction To Computer Programming: BITS Pilani

This document provides an overview of an introduction to computer programming lecture. It discusses general course information, the objectives of learning programming and C language, basics of computers and computing, an introduction to programming languages including machine language, assembly language, and high-level languages. It also provides an introduction to the Unix operating system, including the kernel, shell, and common shell commands.

Uploaded by

ARYAN CHAVAN
Copyright
© © All Rights Reserved
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 30

INTRODUCTION TO

COMPUTER
PROGRAMMING
Dr. Pratik Narang
BITS Pilani Computer Science and Information Systems Department
BITS, Pilani
Pilani Campus
OVERVIEW OF THE LECTURE
• General course information

• Objectives of the Course

• Introduction to Programming

• Introduction to Unix Operating System


GENERAL COURSE INFORMATION
The CS F111 Team

Dr. Pratik Dr. Rajesh Dr. Amitesh S Dr. Sadhana


Narang, IC Kumar Rajput Jha

Neha Vijay Kumari Sakshi


GENERAL COURSE INFORMATION

Component Duration Weightage Date & Nature of


(%) Time component
(Close Book/ Open
Book)
TBA
Mid-Semester Test 90 Min. 35 TBA
TBA
Comprehensive 120 Min. 40 TBA
Examination
Open-book
Quiz / -- 25
Programming test / TBA
Project
GENERAL COURSE INFORMATION
 Text Book: Hanly, J.R. and E.B. Koffman. Problem Solving and Program Design
in C(7/e). Pearson Education, 2013
 Reference Books:

1. Patt, yale. Introduction to computing systems: from bits & gates to C &beyond
(2/e). Mcgraw hill education, 2017.
2. Forouzan, b.A. And richard F. Gilberg . computer science A structured
programming approach using C (3/e). Cengage learning, 2007
3. Gottfried, B.S. and Jitender chhabra. Programming with C (schaum's outlines
series, 3/e). Mcgraw hill education, 2017.
4. Kernighan, b.W and dennis ritchie. The C programming language (2/e).
Pearson education india, 2015.
5. Das, s. Unix: concepts and applications (4/e). Mcgraw hill education, 2017.
6. Das, Sumitabha. Computer fundamentals and C programming. New delhi,
india: mcgraw hill education. (2018)
GENERAL COURSE INFORMATION

Lab Sessions:
 Weekly 2 hour
 Lab sessions on Ubuntu – install OS or VM on
your machines [DIY]
 
Nalanda
 LMS of BITS Pilani.
OBJECTIVE OF THE COURSE !
OBJECTIVE OF THE COURSE !

 Basic concepts of the C programming


language
OBJECTIVE OF THE COURSE !

 Basic concepts of the C programming


language

 Problem-solving through programming


OBJECTIVE OF THE COURSE !

 Basic concepts of the C programming


language

 Problem-solving through programming

 Systematic techniques and approaches for


constructing programs
COMPUTERS AND COMPUTING
Computer: A device that takes data as input,
does some processing and then returns an
output
COMPUTERS AND COMPUTING
Computer: A device that takes data as input,
does some processing and then returns an
output
COMPUTERS AND COMPUTING
Types of Memory

Registers (inbuilt on
the processor)

Cache (inbuilt on
Cost and Speed
the processor)
Size
Primary (RAM,
ROM)

Secondary (HDD,
FlashMemory)
INTRODUCTION TO PROGRAMING
LANGUAGE

Program ?
INTRODUCTION TO PROGRAMING
LANGUAGE

Program
 Collection of instructions that performs a specific
task when executed by a computer
INTRODUCTION TO PROGRAMING
LANGUAGE

Program
 Collection of instructions that performs a specific
task when executed by a computer

 Written using some programming language


INTRODUCTION TO PROGRAMING
LANGUAGE

Program
 Collection of instructions that performs a specific
task when executed by a computer

 Written using some programming language

 Programming languages are mechanical and not


natural; hence are unambiguous
INTRODUCTION TO PROGRAMING
LANGUAGE

Levels of Programming language

High Level Language

Assembly Ease of
Language understanding

Machine language
INTRODUCTION TO PROGRAMING
LANGUAGE

Machine Language

 Language of the machine

 Made up of a series of binary patterns 

 Can be run directly

 Difficult to learn
INTRODUCTION TO PROGRAMING
LANGUAGE

Assembly Language:

 Uses simple pneumonic abbreviations

 Unique to a specific CPU architecture

 Requires assembler
INTRODUCTION TO PROGRAMING
LANGUAGE

High- Level Language:

 English-like

 Easier

 Requires Compiler 

 Compiler: Generates object code


C LANGUAGE

General-purpose high level programming


language

Language is platform independent

Closely associated with the UNIX


operating system
OPERATING SYSTEM
 An OS is a layer of software interposed between
the application program and the hardware
LAYERED ARCHITECTURE OF UNIX
UNIX OPERATING SYSTEM

Kernel
A Program that constitutes the central
core of the Operating System

Responsible for
 Process Management
 Memory Management
 File Management
 I/O Management
UNIX OPERATING SYSTEM

Shell

 Provides an interface to the user to use


operating system services

 Primary function  to read commands from


the console and execute them.
UNIX OPERATING SYSTEM

Shell Commands in UNIX


▪ Displaying the file contents on the terminal
▪ File and Directory Manipulation Commands
▪ Extract, sort and filter data Commands
▪ Basic Terminal Navigation Commands
▪ File permission Commands
OPERATING SYSTEM

 Isolates users and application programmers from


the underlying hardware

 Manages the resources of a computer

 Aims to manage its resources in a safe and


efficient way
OPERATING SYSTEM
 Applications can connect to kernel through
system calls only

 System Call: Request made by a process to the


kernel for some service

 Modes of operation
 User: Less privileged
 Kernel: privileged mode

You might also like