Skill Area 311 Part B. Lecture Overview Assembly Code Assembler Format of Assembly Code Advantages Assembly Code Disadvantages Assembly Code High-Level.

Slides:



Advertisements
Similar presentations
Copyright © 2003 by Prentice Hall Computers: Tools for an Information Age Chapter 15 Programming and Languages: Telling the Computer What to Do.
Advertisements

Dr. Ken Hoganson, © August 2014 Programming in R COURSE NOTES 2 Hoganson Language Translation.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
Algorithms and flow charts
2 We need programming languages to communicate with a computer. The two broad classifications of programming languages are: Low-level and High- level.
The Binary Machine Modern high-level programming languages are designed to make programming easier. On the other end, the low level, all modern digital.
Computers: Tools for an Information Age
Chapter 16 Programming and Languages: Telling the Computer What to Do.
An Introduction to Programming with C++ Fifth Edition Chapter 1 An Introduction to Programming.
CS 104 Introduction to Computer Science and Graphics Problems Software and Programming Language (2) Programming Languages 09/26/2008 Yang Song (Prepared.
SOFTWARE SYSTEMS SOFTWARE APPLICATIONS SOFTWARE PROGRAMMING LANGUAGES.
Chapter 1 Introduction to Programming. Computer Hardware CPU Memory –Main or primary –Secondary or auxiliary Input device(s) Output device(s)
1 CHAPTER 4 LANGUAGE/SOFTWARE Hardware Hardware is the machine itself and its various individual equipment. It includes all mechanical, electronic.
ENGR. SHOAIB ASLAM Computer Programming I Lecture 02.
Programming Languages Lecture 12. What is Programming?  The process of telling the computer what to do  Also known as coding.
1 Chapter-01 Introduction to Computers and C++ Programming.
Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.
Programming Languages: Telling the Computers What to Do Chapter 16.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Introduction to Computer Programming itc-314
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Understanding Computers Ch. 131 Chapter 13 Program Development and Programming Languages.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
สาขาวิชาเทคโนโลยี สารสนเทศ คณะเทคโนโลยีสารสนเทศ และการสื่อสาร.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 2 INTRODUCTION TO SOFTWARE DEVELOPMENT: PROGRAMMING & LANGUAGES.
COMPUTER PROGRAMMING Source: Computing Concepts (the I-series) by Haag, Cummings, and Rhea, McGraw-Hill/Irwin, 2002.
Machine language is the lowest and most basic language of programming language. It is a collection of digits which The computer reads and interprets.
Tranlators. Machine Language The lowest-level programming languageprogramming language Machine languages are the only languages understood by computers.languagescomputers.
Programming Language Rico Yu. Levels of Programming Languages 1.Low level languages 2.High level languages.
Evolution of Programming Languages Generations of PLs.
COMPUTER PROGRAMS AND LANGUAGES Chapter 4. Developing a computer program Programs are a set (series) of instructions Programmers determine The instructions.
Programming Languages 1.07a.  A computer program is a series of instructions that direct a computer to perform a certain task.  A programming language.
CMPE13Cyrus Bazeghi 1 Programming Languages Telling computers what to do.
Visual BASIC 1 Introduction
The Teacher Computing Computer Languages [Computing]
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
PROGRAMMING LANGUAGES
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
Programming and Languages Dept. of Computer and Information Science IUPUI.
8086/8088 Instruction Set, Machine Codes and Addressing Modes.
Lecture-8 Introduction to computer languages.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
The Functions and Purposes of Translators Translators, Interpreters and Compilers - High Level Languages.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Introduction to Computer Programming Concepts M. Uyguroğlu R. Uyguroğlu.
Introduction to computer programming
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Programming Languages
Software Engineering Algorithms, Compilers, & Lifecycle.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
INTRODUCTION TO COMPUTER PROGRAMMING ITC-314. Computer Programming  Computer Programming means creating a sequence of instructions to enable a computer.
Introduction to computer software. Programming the computer Program, is a sequence of instructions, written to perform a specified task on a computer.
Evolution and History of Programming Languages
Computer Languages [Computing] Computing.
Programming Languages
Operating System Interface between a user and the computer hardware
CSCI-235 Micro-Computer Applications
Computer Programming.
Microprocessor and Assembly Language
Programming Languages and Translators
Assembler, Compiler, Interpreter
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Assembler, Compiler, Interpreter
Introduction to Computer Programming
An Introduction to Programming with C++ Fifth Edition
Chapter 1: Preliminaries
Presentation transcript:

Skill Area 311 Part B

Lecture Overview Assembly Code Assembler Format of Assembly Code Advantages Assembly Code Disadvantages Assembly Code High-Level Language Types of High-Level Languages Advantages & Disadvantages High- Level Language

ASSEMBLY CODE OR ASSEMBLY LANGUAGE

What is an “Assembly Code”? Symbolic instruction what humans can understand Form of alphanumeric symbols known as mnemonic codes. Can have maximum up to 5 letter combination E.g. –ADD for addition –SUB for subtraction

Why “Assembly Code”? Maps directly into machine language Designed for a family of microprocessors MOV AX, BX ADD AX, 5A INC BX JMP Compile

What is an Assembler? A program that converts assembly code into machine code Takes basic computer instructions and converts into a pattern of bits Most popular assemblers 1. MASM (Microsoft assembler program) 2. TASM (Borland turbo assembler program)

What is an Assembler?

Instruction Format of Assembler An assembly program consists of set of statements Format: LABEL & COMMENT are optional OPCODE & OPERAND(s) are mandatory LABELOPCODEOPERAND (s);COMMENT AGAINADDR3,R3,R2; It will contain the product

Instruction Format of Assembler OPCODE = the thing the instruction is to do OPERAND = the thing it is supposed to do it to LABEL = a symbolic name which used to identify memory locations that are referred to explicitly in the program COMMENT = message intended only for human

Working Programmer write a program using a sequence of assemble instructions. This sequence of assembler instructions, known as the source code/source program, then specified to the assembler program when that program is started. It translates a source code into machine language. The output of the assembler program is called the object code or object program.

Assembler Instruction Sample

Advantages of Assembly Code It is easier to understand and use as compared to machine language. It is easy to locate and correct errors. It is modified easily

Disadvantages of Assembly Code Machine dependent Since it is machine dependent therefore programmer should have knowledge of the hardware also

HIGH-LEVEL LANGUAGE

What is High-Level Language? High-Level language is basically symbolic languages that use English words and/or mathematical symbols rather than mnemonic codes. Each instruction in the high-level language is translated into many machine language instructions.

Purpose of High-Level Language To enable people (programmer) to write program easily and in their own native language environment (English). Examples: –C, C++, Java, VB, HTML

Types of High-Level Languages Languages have been developed for general purpose and specific purpose Types of High-Level Languages: –Algebraic Formula-Type Processing –Business Data Processing –String and List Processing –Object Oriented Programming Language (OOP) –Visual Programming Language

Algebraic Formula-Type Processing Oriented towards the computational procedures for solving mathematical and statistical problem. Examples: –BASIC (Beginners All Purpose Symbolic Instruction Code) –FORTRAN (Formula Translation) –PL/I (Programming Language, Version 1) –ALGOL (Algorithmic Language) –APL (A Programming Language )

Business Data Processing Emphasize their capabilities for maintaining data processing procedures and files handling problems. Examples: –COBOL (Common Business Oriented Language) –RPG (Report Program Generator)

String and List Processing Used for string manipulation including search for patterns, inserting and deleting characters. Examples: –LISP (List Processing) –Prolog (Program in Logic)

Object Oriented Programming Language In OOP, the computer program is divided into objects. Examples: –C++ –Java –HTML5

Visual Programming Language Designed for building Windows- based applications. Examples: –Visual Basic –Visual C

Instruction Format Simple English: –printf(“My name is Dhimas Ruswanto”); Algebraic Format: a=2, b=3 sum=a+b sum=2+3 sum=5

Advantages of High-Level Language User-friendly Similar to English with vocabulary of words and symbols Easier to learn Less time to write Easier to maintain Problem oriented rather than ‘machine’ based Can run on any computer for which there exists an appropriate translator

Disadvantages of High-Level Language Need to be translated into the machine language by a translator, thus a price in computer time is paid. The object code generated by a translator might be inefficient Compared to an equivalent assembly language program.

Summary Assembly Code = symbolic instruction that humans can understand Assembly Code: –LABEL OPCODE OPERANDS ;COMMENTS Assembler = A program that converts assembly code into machine code High-Level language is basically symbolic languages that use English words and/or mathematical symbols rather than mnemonic codes. Types of High-Level Languages: –Algebraic Formula-Type Processing –Business Data Processing –String and List Processing –Object Oriented Programming Language (OOP) –Visual Programming Language