SlideShare a Scribd company logo
1 of 28
Module - 1
Concepts of hardware and software
Computer
• The word computer comes from the word “compute” , which means,
“to calculate”
• Thereby, a computer is an electronic device that can perform
arithmetic operations at high speed
• A computer is also called a data processor because it can store,
process, and retrieve data whenever desired
• The activity of processing data using a computer is called data
processing
• Data is raw material used as input and information is processed data
obtained as output of data processing
data
Capture
data
Manipulate
data
Output
results
information
Characteristics of computers
1. Automatic
2. Speed
3. Accuracy
4. Diligence
5. Versatility
6. Memory
7. No IQ
8. No feelings
9. Power of remembering
Evolution of computers
• Blaise Pascal invented the first mechanical adding machine in 1642
• Baron Gottfried Wilhelm von Leibniz invented the first calculator for
multiplication in 1671
• Keyboard machines originated in the United States around 1880
• Around 1880, Herman Hollerith came up with the concept of punched
cards that were extensively used as input media until late 1970s
• Charles Babbage is considered to be the father of modern digital
computers
• He designed “Difference Engine” in 1822
• He designed a fully automatic analytical engine in 1842 for performing
basic arithmetic functions
• His efforts established a number of principles that are fundamental to the
design of any digital computer
Some well known early computers
• The Mark I Computer (1937-44)
• The Atanasoff-Berry Computer (1939-42)
• The ENIAC (1943-46)
• The EDVAC (1946-52)
• The EDSAC (1947-49)
• Manchester Mark I (1948)
• The UNIVAC I (1951)
Computer languages
• Computer language or programming language is a language acceptable to a
computer system and the process of writing instructions in such a language is
known as programming or coding
• Language is a means of communication. We use natural language such as
English to communicate our ideas and emotions to others. Similarly, a
programmer use a computer language to instruct a computer what he/she
wants it to it
• Every natural language has a systematic method of using the words and
symbols in that language defined by the grammar rules of the language.
Similarly, we need to use the words and symbols of a computer language as per
the set rules, known as syntax rules of the language.
• Classification of computer language
1. Machine language
2. Assembly language
3. High level language
Machine language
• It is the only language that the system understands without using a
translation program
• It is written as strings of 1’s and 0’s (eg- 101100111111010011101100)
• Circuitry of the computer recognize the machine language instructions
and converts them into electrical signals
• It has 2 part format
• Opcode – tells the computer what function to perform
• Operand – where to find/store the data on which computer has to
perform operation.
OPCODE OPERAND
• Every computer has a set of operation codes, called, instruction set
• Typical operations included in the instruction set of computer is;
1. Arithmetic operation
2. Logical operation
3. Branch operations
4. Data movement operations for moving data between memory and
registers
5. Data movement operations for moving data between input devices
to memory and memory to output devices
• We can also write it using decimal digits if the computers circuitry
permits it
• Disadvantages of machine language
1. Machine dependent
2. Difficult to program
3. Error prone
4. Difficult to modify
• Advantage
1. Can be executed very fast
Assembly language
• A language that allows use of letters and symbols instead of numbers
for representing instructions and storage locations is called Assembly
language or symbolic language
• A program written in assembly language is called assembly language
program or symbolic program
• It uses Alphanumeric mnemonic codes (eg; ADD, SUB)
• It provides additional instructions called pseudo instructions
• We must convert assembly language program into its equivalent
machine language before executing it on the computer
Assembler
• It is a system software supplied by the computer manufacturer
• Translate the assembly language into machine language
• It also assembles the machine language program in main memory and
makes it ready for execution
• Once the system obtains the object code, it can execute it as many
times as required
ASSEMBLER
Assembly language program(I/P) Machine language program
(source program) (object program)
Advantages of assembly language
• Easier to understand and use
• Easier to locate and correct errors
• Easier to modify
• Easily relocatable
Disadvantages
• Machine dependent
• Knowledge of hardware required
• Machine level coding(time consuming & difficult)
High level language(HLL)
• It enables the programmers to write instructions using English words
and familiar mathematical symbols and expressions
• They are machine independent
• They do not require programmers to know anything about the
internal structure of the computer
• We need a translation program called, compiler, to convert HLL into
machine language
COMPILER
High level language
Machine language
• It requires separate compilers for each programming language
• For example, a FORTRAN compiler can translate only source programs
written FORTRAN
Process of removing syntax errors from a source program
Advantages of high level language
Limitation of HLL
LANGUAGE TRANSLATORS
• A translator is a program that converts source code into object code.
• Translators are needed to translate programs written in high level
languages into the machine code that a computer understands
• Generally, there are three types of translator: compilers. interpreters.
assemblers.
1. Compiler
• A compiler takes the source code as a whole and translates it into object
code all in one go. Once converted, the object code can be run unassisted
at any time. This process is called compilation.
• Compiler translate a complete source program into machine code .
• The whole source code file compiled in one go and a complete compiled
version of the file is produced.
2. Assembler
• Translate the assembly language into machine language
3. Interpreter
• The input to an interpreter is a source program, but unlike a
compiler its output is the result of program execution instead of
object program.
• Repeated interpretation(translation + execution)of a program is
necessary for its repeated execution
Intermediate language compiler & interpreter
Features of good language
1. Simplicity – a good programming language must be simple and easy to
learn and use
2. Naturalness – it should provide appropriate operators, data structures,
control structures and natural syntax to facilitate programmers to code
their problems easily and efficiently.
3. Abstraction – abstraction means the ability to define and then use
complicated operations in ways that allows programmers to ignore many
of the details
4. Efficiency – a good programming language should enable a computer
system to translate it into machine code efficiently, execute it efficiently,
and manage it with less memory space
5. Structured programming support - a good programming language should
allow the programmers to write their programs based on the concepts of
structured programming
6. Compactness – in a good programming language, programmers should
be able to express the intended operations concisely without losing
readability
7. Locality - A good programming language should be such that while
writing a program a programmer need not jump around visually as
he/she prepares the text of the program
8. Extensibility - A good programming language should also allow
extension through simple, natural, and elegant mechanism
9. Suitability to its environment – In addition to being suitable to its
application area, a good programming language must also be suitable to
its operating environment.

More Related Content

What's hot

Cmp104 lec 6 computer lang
Cmp104 lec 6 computer langCmp104 lec 6 computer lang
Cmp104 lec 6 computer langkapil078
 
Computer Programming: Chapter 1
Computer Programming: Chapter 1Computer Programming: Chapter 1
Computer Programming: Chapter 1Atit Patumvan
 
computer language with full detail
computer language with full detail computer language with full detail
computer language with full detail sonykhan3
 
Introduction to Programming Languages
Introduction to Programming LanguagesIntroduction to Programming Languages
Introduction to Programming Languageseducationfront
 
" PROGRAMMING LANGUAGE " with MOHSIN
" PROGRAMMING LANGUAGE " with MOHSIN" PROGRAMMING LANGUAGE " with MOHSIN
" PROGRAMMING LANGUAGE " with MOHSINMOHSIN BANGI
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programmingbhuttosalman
 
Computer languages
Computer languagesComputer languages
Computer languagesAqdasNoor
 
Interaction With Computers FIT
Interaction With Computers FITInteraction With Computers FIT
Interaction With Computers FITRaj vardhan
 
Programming languages,compiler,interpreter,softwares
Programming languages,compiler,interpreter,softwaresProgramming languages,compiler,interpreter,softwares
Programming languages,compiler,interpreter,softwaresNisarg Amin
 
Classification of Programming Languages
Classification of Programming LanguagesClassification of Programming Languages
Classification of Programming LanguagesProject Student
 
classification of computer language
classification of computer languageclassification of computer language
classification of computer languageBinamraRegmi
 
Presentation on computer language
Presentation on computer languagePresentation on computer language
Presentation on computer languageSwarnima Tiwari
 

What's hot (20)

Language processors
Language processorsLanguage processors
Language processors
 
Cmp104 lec 6 computer lang
Cmp104 lec 6 computer langCmp104 lec 6 computer lang
Cmp104 lec 6 computer lang
 
Computer Programming: Chapter 1
Computer Programming: Chapter 1Computer Programming: Chapter 1
Computer Programming: Chapter 1
 
computer language with full detail
computer language with full detail computer language with full detail
computer language with full detail
 
Introduction to Programming Languages
Introduction to Programming LanguagesIntroduction to Programming Languages
Introduction to Programming Languages
 
" PROGRAMMING LANGUAGE " with MOHSIN
" PROGRAMMING LANGUAGE " with MOHSIN" PROGRAMMING LANGUAGE " with MOHSIN
" PROGRAMMING LANGUAGE " with MOHSIN
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Interaction With Computers FIT
Interaction With Computers FITInteraction With Computers FIT
Interaction With Computers FIT
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Programming languages,compiler,interpreter,softwares
Programming languages,compiler,interpreter,softwaresProgramming languages,compiler,interpreter,softwares
Programming languages,compiler,interpreter,softwares
 
Computer language
Computer languageComputer language
Computer language
 
Classification of Programming Languages
Classification of Programming LanguagesClassification of Programming Languages
Classification of Programming Languages
 
Csc240 lecture 1
Csc240   lecture 1Csc240   lecture 1
Csc240 lecture 1
 
computer languages
computer languagescomputer languages
computer languages
 
Chapter 4 computer language
Chapter 4 computer languageChapter 4 computer language
Chapter 4 computer language
 
Programming
ProgrammingProgramming
Programming
 
classification of computer language
classification of computer languageclassification of computer language
classification of computer language
 
Presentation on computer language
Presentation on computer languagePresentation on computer language
Presentation on computer language
 

Similar to Computer-charecteristics,types of languages,translators

Similar to Computer-charecteristics,types of languages,translators (20)

sege.pdf
sege.pdfsege.pdf
sege.pdf
 
Introduction to computer programming
Introduction to computer programming Introduction to computer programming
Introduction to computer programming
 
programming.pptx
programming.pptxprogramming.pptx
programming.pptx
 
Program Logic and Design
Program Logic and DesignProgram Logic and Design
Program Logic and Design
 
Python-L1.pptx
Python-L1.pptxPython-L1.pptx
Python-L1.pptx
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptx
 
4 computer languages
4 computer languages4 computer languages
4 computer languages
 
Lec21&22.pptx programing language and there study
Lec21&22.pptx programing language and there studyLec21&22.pptx programing language and there study
Lec21&22.pptx programing language and there study
 
Lesson 2.pptx
Lesson 2.pptxLesson 2.pptx
Lesson 2.pptx
 
Programming Fundamentals and Programming Languages Concepts
Programming Fundamentals and Programming Languages ConceptsProgramming Fundamentals and Programming Languages Concepts
Programming Fundamentals and Programming Languages Concepts
 
Programming Language
Programming LanguageProgramming Language
Programming Language
 
a1.pptx.pdf
a1.pptx.pdfa1.pptx.pdf
a1.pptx.pdf
 
Computer, generations, languages, soft wares
Computer, generations, languages, soft waresComputer, generations, languages, soft wares
Computer, generations, languages, soft wares
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptx
 
Languages in computer
Languages in computerLanguages in computer
Languages in computer
 
Introduction to Compilers
Introduction to CompilersIntroduction to Compilers
Introduction to Compilers
 
Lecture 8
Lecture 8Lecture 8
Lecture 8
 
Cmp104 lec 6 computer lang
Cmp104 lec 6 computer langCmp104 lec 6 computer lang
Cmp104 lec 6 computer lang
 
Introduction to programming languages
Introduction to programming languagesIntroduction to programming languages
Introduction to programming languages
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 

Recently uploaded

AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfphamnguyenenglishnb
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxNirmalaLoungPoorunde1
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.arsicmarija21
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxAnupkumar Sharma
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementmkooblal
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 

Recently uploaded (20)

AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdfAMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
AMERICAN LANGUAGE HUB_Level2_Student'sBook_Answerkey.pdf
 
Employee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptxEmployee wellbeing at the workplace.pptx
Employee wellbeing at the workplace.pptx
 
AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.AmericanHighSchoolsprezentacijaoskolama.
AmericanHighSchoolsprezentacijaoskolama.
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Bikash Puri  Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Bikash Puri Delhi reach out to us at 🔝9953056974🔝
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptxMULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
MULTIDISCIPLINRY NATURE OF THE ENVIRONMENTAL STUDIES.pptx
 
Hierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of managementHierarchy of management that covers different levels of management
Hierarchy of management that covers different levels of management
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 

Computer-charecteristics,types of languages,translators

  • 1. Module - 1 Concepts of hardware and software
  • 2. Computer • The word computer comes from the word “compute” , which means, “to calculate” • Thereby, a computer is an electronic device that can perform arithmetic operations at high speed • A computer is also called a data processor because it can store, process, and retrieve data whenever desired • The activity of processing data using a computer is called data processing • Data is raw material used as input and information is processed data obtained as output of data processing
  • 4. Characteristics of computers 1. Automatic 2. Speed 3. Accuracy 4. Diligence 5. Versatility 6. Memory 7. No IQ 8. No feelings 9. Power of remembering
  • 5. Evolution of computers • Blaise Pascal invented the first mechanical adding machine in 1642 • Baron Gottfried Wilhelm von Leibniz invented the first calculator for multiplication in 1671 • Keyboard machines originated in the United States around 1880 • Around 1880, Herman Hollerith came up with the concept of punched cards that were extensively used as input media until late 1970s • Charles Babbage is considered to be the father of modern digital computers • He designed “Difference Engine” in 1822 • He designed a fully automatic analytical engine in 1842 for performing basic arithmetic functions • His efforts established a number of principles that are fundamental to the design of any digital computer
  • 6. Some well known early computers • The Mark I Computer (1937-44) • The Atanasoff-Berry Computer (1939-42) • The ENIAC (1943-46) • The EDVAC (1946-52) • The EDSAC (1947-49) • Manchester Mark I (1948) • The UNIVAC I (1951)
  • 7. Computer languages • Computer language or programming language is a language acceptable to a computer system and the process of writing instructions in such a language is known as programming or coding • Language is a means of communication. We use natural language such as English to communicate our ideas and emotions to others. Similarly, a programmer use a computer language to instruct a computer what he/she wants it to it • Every natural language has a systematic method of using the words and symbols in that language defined by the grammar rules of the language. Similarly, we need to use the words and symbols of a computer language as per the set rules, known as syntax rules of the language. • Classification of computer language 1. Machine language 2. Assembly language 3. High level language
  • 8. Machine language • It is the only language that the system understands without using a translation program • It is written as strings of 1’s and 0’s (eg- 101100111111010011101100) • Circuitry of the computer recognize the machine language instructions and converts them into electrical signals • It has 2 part format • Opcode – tells the computer what function to perform • Operand – where to find/store the data on which computer has to perform operation. OPCODE OPERAND
  • 9. • Every computer has a set of operation codes, called, instruction set • Typical operations included in the instruction set of computer is; 1. Arithmetic operation 2. Logical operation 3. Branch operations 4. Data movement operations for moving data between memory and registers 5. Data movement operations for moving data between input devices to memory and memory to output devices • We can also write it using decimal digits if the computers circuitry permits it
  • 10. • Disadvantages of machine language 1. Machine dependent 2. Difficult to program 3. Error prone 4. Difficult to modify • Advantage 1. Can be executed very fast
  • 11. Assembly language • A language that allows use of letters and symbols instead of numbers for representing instructions and storage locations is called Assembly language or symbolic language • A program written in assembly language is called assembly language program or symbolic program • It uses Alphanumeric mnemonic codes (eg; ADD, SUB) • It provides additional instructions called pseudo instructions • We must convert assembly language program into its equivalent machine language before executing it on the computer
  • 12. Assembler • It is a system software supplied by the computer manufacturer • Translate the assembly language into machine language • It also assembles the machine language program in main memory and makes it ready for execution • Once the system obtains the object code, it can execute it as many times as required ASSEMBLER Assembly language program(I/P) Machine language program (source program) (object program)
  • 13. Advantages of assembly language • Easier to understand and use • Easier to locate and correct errors • Easier to modify • Easily relocatable Disadvantages • Machine dependent • Knowledge of hardware required • Machine level coding(time consuming & difficult)
  • 14.
  • 15. High level language(HLL) • It enables the programmers to write instructions using English words and familiar mathematical symbols and expressions • They are machine independent • They do not require programmers to know anything about the internal structure of the computer • We need a translation program called, compiler, to convert HLL into machine language COMPILER High level language Machine language
  • 16. • It requires separate compilers for each programming language • For example, a FORTRAN compiler can translate only source programs written FORTRAN
  • 17.
  • 18. Process of removing syntax errors from a source program
  • 19. Advantages of high level language
  • 21. LANGUAGE TRANSLATORS • A translator is a program that converts source code into object code. • Translators are needed to translate programs written in high level languages into the machine code that a computer understands • Generally, there are three types of translator: compilers. interpreters. assemblers. 1. Compiler • A compiler takes the source code as a whole and translates it into object code all in one go. Once converted, the object code can be run unassisted at any time. This process is called compilation. • Compiler translate a complete source program into machine code . • The whole source code file compiled in one go and a complete compiled version of the file is produced.
  • 22. 2. Assembler • Translate the assembly language into machine language 3. Interpreter
  • 23. • The input to an interpreter is a source program, but unlike a compiler its output is the result of program execution instead of object program. • Repeated interpretation(translation + execution)of a program is necessary for its repeated execution
  • 25.
  • 26.
  • 27. Features of good language 1. Simplicity – a good programming language must be simple and easy to learn and use 2. Naturalness – it should provide appropriate operators, data structures, control structures and natural syntax to facilitate programmers to code their problems easily and efficiently. 3. Abstraction – abstraction means the ability to define and then use complicated operations in ways that allows programmers to ignore many of the details 4. Efficiency – a good programming language should enable a computer system to translate it into machine code efficiently, execute it efficiently, and manage it with less memory space 5. Structured programming support - a good programming language should allow the programmers to write their programs based on the concepts of structured programming
  • 28. 6. Compactness – in a good programming language, programmers should be able to express the intended operations concisely without losing readability 7. Locality - A good programming language should be such that while writing a program a programmer need not jump around visually as he/she prepares the text of the program 8. Extensibility - A good programming language should also allow extension through simple, natural, and elegant mechanism 9. Suitability to its environment – In addition to being suitable to its application area, a good programming language must also be suitable to its operating environment.