0% found this document useful (0 votes)
61 views20 pages

Me 171 - 1

This document provides an overview of a computer programming language course. It introduces the course instructor, schedule, assessment criteria, policies, and expected classroom environment. The course will cover the C programming language and provide an introduction to Python programming. Lectures will focus on topics in C up to custom data types, and 3-4 lectures will be dedicated to Python programming up to a certain point. Recommended textbooks are also listed. The goal is to teach students the fundamental concepts of programming languages through lectures and hands-on practice in C and Python.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
61 views20 pages

Me 171 - 1

This document provides an overview of a computer programming language course. It introduces the course instructor, schedule, assessment criteria, policies, and expected classroom environment. The course will cover the C programming language and provide an introduction to Python programming. Lectures will focus on topics in C up to custom data types, and 3-4 lectures will be dedicated to Python programming up to a certain point. Recommended textbooks are also listed. The goal is to teach students the fundamental concepts of programming languages through lectures and hands-on practice in C and Python.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 20

ME171

COMPUTER PROGRAMMING
LANGUAGE

Lecture 1: Introduction
Course Teacher
Md. Tusher Ahmed
Lecturer
Department of Mechanical Engineering
Bangladesh University of Engineering and Technology
Courtesy: Dr. Sumon Saha
Mr. Partha Kumar Das
COURSE DESCRIPTION
ME171: Computer Programming Language
3 Credits- Total Marks: 300
1 Lectures per week on my part
Schedule: Saturday
Section A Section B Section C
10.00am-11.00am 12.00pm-1.00pm 9.00am-10.00am

Course Teacher: Md. Tusher Ahmed, Lecturer, Dept. of ME, BUET


Contact No. : 01766199991
Email address: tusher_ahmed@me.buet.ac.bd
tusherahmed94@gmail.com
Office: ME511A, 4th Floor , EME Building
2
 Attendance 10%
 Class Test/Assignment 20%
 Term Final Exam 70%
 Pass Marks: 40% A+: 80%
 Academic Offences:
1.Plagiarism is a major academic offence
2.Proxy in class attendance is strictly forbidden.
3.Proper citation of any reference material is needed in
preparation of assignment.

3
CLASS ENVIRONMENT
 Feel free to share your concerns and ideas to me within the class duration
(inclusively to me only).
 Be ready for daily class performance.
 Bring necessary papers, pencil, calculator, books, lecture copies etc.

It’s not the teacher who teaches, it’s the students who learns.- A quote best fits
for any software learning course from my own experience as both Student and
Teacher
4
Language: Mode of Communication
• We, the human being, need language to
interact each other.
• It is only the language for the lack of
which we can not communicate to
animals or insects.
• Every electronic devices (starting from a
LED to Core i3 processor) works only on
two basic operation: On (1) and Off (0).
• That means, combination of only two
digits (0 and 1) is sufficient enough to
interact with any electronic devices.
• In case of high performance multi-
tasking device like a computer, this
combination is not so much human
friendly for which it necessitates another
mode of communication: Programming
Language.
5
Programming Languages

• A programming language is a set of rules that create a


pathway to let a computer know what the operator or
programmer wants to do with it.
• It is a notational system for describing a computational
problem from a human readable to machine readable
form.

6
Computer Languages
• Machine Language
• Uses binary code
• Machine-dependent
• Not portable
• Assembly Language
• Uses mnemonics
• Machine-dependent
• Not usually portable
• Efficient but difficult to understand
• Used for mainly operating system development
• High-Level Language (HLL)
• Uses English-like language
• Machine independent
• Portable (but must be compiled for different platforms)
• Easy to write and understand
• Used for complex scientific and engineering tasks
• Examples: Pascal, C, C++, Java, Fortran, Python . . .
7
Machine Language

• The representation of a computer program which is


actually read and understood by the computer.
• A program in machine code consists of a sequence of machine
instructions.
• Instructions:
• Machine instructions are in binary code
• Instructions specify operations and memory cells involved in
the operation
Example: Operation Address

0010 0000 0000 0100

0100 0000 0000 0101

0011 0000 0000 0110

8
Assembly Language

• A symbolic representation of the machine language of


a specific processor.
• Is converted to machine code by an assembler.
• Usually, each line of assembly code produces one
machine instruction (One-to-one correspondence).
• Programming in assembly language is slow and error-
prone but is more efficient in terms of hardware
performance.
• Mnemonic representation of the instructions and data
• Example:
Load Price
Add Tax
Store Cost

9
High-Level Language
• A programming language which use statements
consisting of English-like keywords such as "FOR",
"PRINT" or “IF“, ... etc.
• Each statement corresponds to several machine
language instructions (one-to-many correspondence).
• Much easier to program than in assembly language.
• Data are referenced using descriptive names.
• Operations can be described using familiar symbols.
• A machine language system program, called a
compiler, is needed to compile or transform the code
into machine readable form.
• Example:
Cost = Price + Tax

10
Computer Languages
High-level program class Triangle {
...
float surface()
return b*h/2;
}

Low-level program LOAD r1,b


LOAD r2,h
MUL r1,r2
DIV r1,#2
RET

Executable Machine code 0001001001000101001001


001110110010101101001.
..

11
Programming
Language
Family Tree

12
Programming Languages

• Two broad groups


• Traditional programming languages
• Sequences of instructions
• First, second and some third generation languages
• Object-oriented languages
• Objects are created rather than sequences of instructions
• Some third generation, and fourth and fifth generation
languages

13
Typical Programming Languages

• FORTRAN
• FORmula TRANslation.
• Developed at IBM in the mid-1950s.
• Designed for scientific and mathematical applications by
scientists and engineers.
• COBOL
• COmmon Business Oriented Language.
• Developed in 1959.
• Designed to be common to many different computers.
• Typically used for business applications.

14
Typical Programming Languages

• BASIC
• Beginner’s All-purpose Symbolic Instruction Code.
• Developed at Dartmouth College in mid 1960s.
• Developed as a simple language for students to write
programs with which they could interact through
terminals.
• C
• Developed by Bell Laboratories in the early 1970s.
• Provides control and efficiency of assembly language
while having third generation language features.
• Often used for system programs.
• UNIX is written in C.

15
Typical Programming Languages
• C++
• An object-oriented programming language.
• It is C language with additional features.
• Widely used for developing system and application
software.
• Graphical user interfaces can be developed easily with
visual programming tools.
• JAVA
• An object-oriented programming language similar to
C++ that eliminates lots of C++’s problematic features
• Allows a web page developer to create programs for
applications, called applets that can be used through a
browser.
• Objective of JAVA developers is that it be machine,
platform and operating system independent.
16
Special Programming Languages
• Scripting Languages
• JavaScript and VBScript
• Php and ASP
• Perl and Python
• Command Languages
• sh, csh, bash
• Text processing Languages
• LaTex, PostScript
• HTML
• HyperText Markup Language.
• Used on the Internet and the World Wide Web (WWW).
• Web page developer puts brief codes called tags in the
page to indicate how the page should be formatted.

17
Course Outline

Almost everything about C


(approximately up to Custom Data Types)

An introduction of programming on Python


(up to 3-4 lectures)

18
Course Material
1. Teach Yourself C - Herbert Schildt
2. The C Programming Language –
Brian W. Kernighan, Dennis M. Ritchie

3. Programming in ANSI C –
E Balagurusamy

19
That’s All
Thank You

20

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy