Program Translation Module 6. Mid-Term Results.

Slides:



Advertisements
Similar presentations
Chapter 10- Instruction set architectures
Advertisements

Assembly Language for Intel-Based Computers, 4 th Edition Chapter 1: Basic Concepts (c) Pearson Education, All rights reserved. You may modify and.
 Suppose for a moment that you were asked to perform a task and were given the following list of instructions to perform:
Data Representation COE 202 Digital Logic Design Dr. Aiman El-Maleh
1 Lecture-2 CSIT-120 Spring 2001 Revision of Lecture-1 Introducing Computer Architecture The FOUR Main Elements Fetch-Execute Cycle A Look Under the Hood.
Chapter 2 : Number System
The Binary Machine Modern high-level programming languages are designed to make programming easier. On the other end, the low level, all modern digital.
Data Representation Computer Organization &
The Analytical Engine Module 6 Program Translation.
TK 2633 Microprocessor & Interfacing Lecture 3: Introduction to 8085 Assembly Language Programming (2) 1 Prepared By: Associate Prof. Dr Masri Ayob.
Data Representation COE 205
CSCE 121, Sec 200, 507, 508 Fall 2010 Prof. Jennifer L. Welch.
1 Lecture-2 CS-120 Fall 2000 Revision of Lecture-1 Introducing Computer Architecture The FOUR Main Elements Fetch-Execute Cycle A Look Under the Hood.
Implementation of a Stored Program Computer
Introduction to Computers and Programming. Some definitions Algorithm: Algorithm: A procedure for solving a problem A procedure for solving a problem.
Data Representation Number Systems.
CMPT 120 How computers run programs Summer 2012 Instructor: Hassan Khosravi.
Computers Organization & Assembly Language
CPS120: Introduction to Computer Science
How Computers Work Dr. John P. Abraham Professor UTPA.
CSU0014 Assembly Languages Homepage: Textbook: Kip R. Irvine, Assembly Language for Intel-Based Computers,
Summer 2014 Chapter 1: Basic Concepts. Irvine, Kip R. Assembly Language for Intel-Based Computers 6/e, Chapter Overview Welcome to Assembly Language.
Assembly Language for x86 Processors 7th Edition
Click to edit Master title style Click to edit Master text styles –Second level Third level –Fourth level »Fifth level 1 Today’s Topics How information.
Machine Instruction Characteristics
IT253: Computer Organization
ACOE2511 ACOE251/AEEC335 -Assembly Language for the 80X86/Pentium Intel Microprocessors Lecturer: Dr. Konstantinos Tatas.
Foundations of Computer Science Computing …it is all about Data Representation, Storage, Processing, and Communication of Data 10/4/20151CS 112 – Foundations.
Computer Programming I. Today’s Lecture  Components of a computer  Program  Programming language  Binary representation.
Lec 3: Data Representation Computer Organization & Assembly Language Programming.
ECEN2102 Digital Logic Design Lecture 1 Numbers Systems Abdullah Said Alkalbani University of Buraimi.
Computer Systems Organization CS 1428 Foundations of Computer Science.
1 Problem Solving using computers Data.. Representation & storage Representation of Numeric data The Binary System.
Implementation of a Stored Program Computer ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides2.ppt Modification date: Oct 16,
Chapter 2 Binary Values and Number Systems. 2 2 Natural Numbers Zero and any number obtained by repeatedly adding one to it. Examples: 100, 0, 45645,
CSC 3210 Computer Organization and Programming Chapter 1 THE COMPUTER D.M. Rasanjalee Himali.
Chapter 19 Number Systems. Irvine, Kip R. Assembly Language for Intel-Based Computers, Translating Languages English: Display the sum of A times.
Chapter 10 The Assembly Process. What Assemblers Do Translates assembly language into machine code. Assigns addresses to all symbolic labels (variables.
CISC1100: Binary Numbers Fall 2014, Dr. Zhang 1. Numeral System 2  A way for expressing numbers, using symbols in a consistent manner.  " 11 " can be.
EEL 3801C EEL 3801 Part I Computing Basics. EEL 3801C Data Representation Digital computers are binary in nature. They operate only on 0’s and 1’s. Everything.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
ACOE2511 Assembly Language for the 80X86/Pentium Intel Microprocessors Lecturer: Dr. Konstantinos Tatas.
 Lecture 2 Processor Organization  Control needs to have the  Ability to fetch instructions from memory  Logic and means to control instruction sequencing.
Assembly Language Friday, Week 5 Monday, Week 6. Assembly Language  Set of mnemonic names for the instructions in a particular computer's machine language.
Programming Fundamentals. Overview of Previous Lecture Phases of C++ Environment Program statement Vs Preprocessor directive Whitespaces Comments.
Orange Coast College Business Division Computer Science Department CS 116- Computer Architecture Logic Design: Part 1.
Computer Systems – Machine & Assembly code. Objectives Machine Code Assembly Language Op-code Operand Instruction Set.
Chapter 1 Representing Data in a Computer. 1.1 Binary and Hexadecimal Numbers.
Translating Assembly Language to Machine Language.
CHAPTER 3 BINARY NUMBER SYSTEM. Computers are electronic machines which operate using binary logic. These devices use two different values to represent.
Number Systems. The position of each digit in a weighted number system is assigned a weight based on the base or radix of the system. The radix of decimal.
Topic: Binary Encoding – Part 1
Binary, Denary, Hexadecimal Conversion Binary Addition
NUMBER SYSTEMS.
Lec 3: Data Representation
Assembly Language (CSW 353)
3.1 Denary, Binary and Hexadecimal Number Systems
Number Systems.
BEE1244 Digital System and Electronics BEE1244 Digital System and Electronic Chapter 2 Number Systems.
CSCE Fall 2013 Prof. Jennifer L. Welch.
Topics Introduction Hardware and Software How Computers Store Data
Data Representation Conversion 05/12/2018.
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
COMS 161 Introduction to Computing
Other ISAs Next, we’ll first we look at a longer example program, starting with some C code and translating it into our assembly language. Then we discuss.
CSCE Fall 2012 Prof. Jennifer L. Welch.
Introduction to Computer Programming
Chapter Four Data Representation in Computers By Bezawit E.
Instructions in Machine Language
Presentation transcript:

Program Translation Module 6

Mid-Term Results

Mid-term Above 93/100 is A.

Mid-term 93/100 or above is A. 60/100 or below is fail.

Mid-term Above 93/100 is A. 60/100 or below is fail. For students who got 120/200 or less at mid- term attendance in make-up is mandatory.

Mid-term Above 93/100 is A. 60/100 or below is fail. For students who got 120/200 or less at mid- term attendance in make-up is mandatory. Note that April 10 th 2008 is the course withdrawal deadline.

Mid-term Above 93/100 is A. 60/100 or below is fail. For students who got 120/200 or less at mid-term attendance in make-up is mandatory. Note that April 10 th 2008 is the course withdrawal deadline. I will send a private to those students who are below the fail threshold so far and let them know how good they should perform from now (future exams and HWs) on to avoid being failed.

Questions Mid-term? Assignment 3? Assignment 3 is due mid-night April 4 th.

Program Translation Module 6

Introduction Computers are not smart. They do only what we ask them to do.

Introduction Computers are not smart. They do only what we ask them to do. That is they can do whatever we know how to order it to perform. But we use computers because they are fast and precise.

The Binary Machine A modern computer can run programs written in Java, C, C++, Lisp, JavaScript, Cobol and many others. So the computers appear to be Multilingual.

The Binary Machine A modern computer can run programs written in Java, C, C++, Lisp, JavaScript, Cobol and many others. So the computers appear to be Multilingual. But every computer ever built “understands” only one language:

The Binary Machine A modern computer can run programs written in Java, C, C++, Lisp, JavaScript, Cobol and many others. So the computers appear to be Multilingual. But every computer ever built “understands” only one language: the machine language it is wired to use.

The Binary Machine A modern computer can run programs written in Java, C, C++, Lisp, JavaScript, Cobol and many others. So the computers appear to be Multilingual. But every computer ever built “understands” only one language: the machine language it is wired to use. Thus, the machine language of an Intel PC is different than an IBM personal computer or Sun Workstation.

The Binary Machine If we want to use a language like JavaScript to write a program, first we need to have a tool to translate the program to machine language which our computer understands.

Program Translation The notion of translation is central to our discussion. A modern programming language is designed with two audiences in mind:

Program Translation The notion of translation is central to our discussion. A modern programming language is designed with two audiences in mind: The programmers who use the language to write programs for computers. The computer, which needs to execute (run) the instructions in the language.

Program Translation

Machine Language Here is a sample of a machine language for a hypothetical computer:

Binary Presentation The instructions of a machine language are represented using just 0s and 1s.

Binary Presentation The instructions of a machine language are represented using just 0s and 1s. In the next module we’ll see that all computers represent all the information in binary notation.

Binary Presentation The instructions of a machine language are represented using just 0s and 1s. In the next module we’ll see that all computers represent all the information in binary notation because they can only distinguish between two values (low voltage level and high voltage level), which we label as 0 and 1.

Binary Presentation The instructions of a machine language are represented using just 0s and 1s. In the next module we’ll see that all computers represent all the information in binary notation because they can only distinguish between two values (low voltage level and high voltage level), which we label as 0 and 1. Binary notation: a notation which uses only two symbols, 0 and 1, to present information.

Binary Presentation If the computer can work only in terms of 0 and 1, how are we going to represent, store and manipulate the information?

Binary Presentation If the computer can work only in terms of 0 and 1, how are we going to represent, store and manipulate the information? We can use some sort of binary notation.

Binary Presentation For example we can have an easy form of binary representation called binary-coded decimal (BCD) notation, in which we use a table for converting a number to this notation and vice versa.

Binary Presentation For example we can have an easy form of binary representation called binary-coded decimal (BCD) notation, in which we use a table for converting a number to this notation and vice versa. Here is the table: DigitBinary CodeDigitBinary Code

Examples of BCD Convert number 5683 to BCD format.

Examples of BCD Convert number 5683 to BCD format

Examples of BCD Convert number 5683 to BCD format By looking at BCD table and inserting the BCD code for each digit we have:

Examples of BCD Convert number 5683 to BCD format By looking at BCD table and inserting the BCD code for each digit we have: So the BCD equivalent is:

Examples of BCD Convert the BCD code to a decimal (base 10) number.

Examples of BCD Convert the BCD code to a decimal (base 10) number. 1- Divide the sequence into chunks of length 4. Why?

Examples of BCD Convert the BCD code to a decimal (base 10) number. 1- Divide the sequence into chunks of length 4. Why? Use the BCD table to find the corresponding digit for each chunk

Examples of BCD Convert the BCD code to a decimal (base 10) number. 1- Divide the sequence into chunks of length 4. Why? Use the BCD table to find the corresponding digits for each chunk Put the numbers together in the same order: 4810

Do it yourself? a.Convert the number 873 into BCD format. b.Convert to a decimal number.

Do it yourself? a.Convert the number 873 into BCD format. answer: b.Convert to a decimal number. answer: 7095

BCD notation Disadvantages 1.For each decimal number of length n we have a BCD code of length 4n. Example: 211 and Arithmetic on numbers in BCD format is complicated.

Base-10 Notation In everyday life we represent numbers in base 10 Positional Notation. – positional: the value of a digit within a number depends on its position. Example: 342 and 432 – base 10 : the value of any position is a multiple of a power of 10. The digits we use in this notation are: {0, 1, 2, 3, 4, 5, 6, 7,8,9 }

Base-10 Notation Example: the number 7689 is interpreted as:

Base-10 Notation Example: the number 129 is interpreted as:

Base 2 Notation There is nothing special about base 10 notation. We can use any base to represent numbers. But since computers only understand 0 and 1 we use base 2 notation.

Base 2 Notation In base two notation we have only two digits: {0, 1} Each digit in this notation is a multiple of a power of 2 just as in base 10 where each digit is a multiple of a power of is an example of a number in base-2 format.

Base-2 Example The number is interpreted as :

Base 2 Example 213 in base 10 = in base 2

Do it yourself What base-10 number the following base-2 number represents? 10010

Do it yourself What base-10 number the following base-2 number represents? Answer: 18

How to Convert Base-10 to Base-2 We can convert a decimal number to base-2 using a simple algorithm. Lets see the algorithm through examples.

Example 1 Convert decimal number 29 to binary.

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = 1

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = / 2 quotient = 7 remainder = 0

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = / 2 quotient = 7 remainder = / 2 quotient = 3 remainder = 1

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = / 2 quotient = 7 remainder = / 2 quotient = 3 remainder = / 2 quotient = 1 remainder = 1

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = / 2 quotient = 7 remainder = / 2 quotient = 3 remainder = / 2 quotient = 1 remainder = / 2 quotient = 0 remainder = 1 (Stop)

Example 1 Convert decimal number 29 to binary / 2 quotient = 14 remainder = / 2 quotient = 7 remainder = / 2 quotient = 3 remainder = / 2 quotient = 1 remainder = / 2 quotient = 0 remainder = 1 (Stop) 6.Sequence the reminders starting from last step to first: This is the binary (base-2) representation of 29.

Another view of the algorithm Converting decimal number 29 to binary 11101

Example 2 Convert decimal 213 to binary: / 2 quotient = 106 Remainder = / 2 quotient = 53 Remainder = / 2 quotient = 26 Remainder = / 2 quotient = 13 Remainder = / 2 quotient = 6 Remainder = / 2 quotient = 3 Remainder = / 2 quotient = 1 Remainder = / 2 quotient = 0 Remainder = 1 Stop. 9.Sequence from last to first:

Do it yourself Find the binary presentation of decimal 89.

How to Present Text in Binary Format Ok, we know how to represent numbers in binary format, but how about a piece of text?

How to Present Text in Binary Format Ok, we know how to represent numbers in binary format, but how about a piece of text? Like BCD notation we can have a table which maps each character to an integer code in binary.

How to Present Text in Binary Format Ok, we know how to represent numbers in binary format, but how about a piece of text? Like BCD notation we can have a table which maps each character to an integer code in binary. This coding may vary from machine to machine. But many computers use a well known coding for representing characters known as ASCII (American Standard Code for Informatio Interchange).

Examples of ASCII Entries CharacterInteger code in decimalInteger code in binary space $ ? “ A B a b z

Encoding Instructions Computers understand only binary.

Encoding Instructions Computers understand only binary. We need to feed the instructions to computer in binary format. But how do we do it?

Encoding Instructions Computers understand only binary. We need to feed the instructions to computer in binary format. But how do we do it? Again we need to have a table (mapping) for having a code in binary for each instruction.

Encoding Instructions Computers understand only binary. We need to feed the instructions to computer in binary format. But how do we do it? Again we need to have a table (mapping) for having a code in binary for each instruction. For example we can define an 8-bit operation code followed by 8 more bits which provides details about the instruction.

Bit and Byte What is a bit?

Bit and Byte What is a bit? A bit is a unit of storage which can store only 0 or 1.

Bit and Byte What is a bit? A bit is a unit of storage which can store only 0 or 1. A bit storage: 01

Bit and Byte What is a bit? A bit is a unit of storage which can store only 0 or 1. A bit storage: Every 8-bit is called a byte. 01

Bit and Byte What is a bit? A bit is a unit of storage which can store only 0 or 1. A bit storage: Every 8-bit is called a byte

Bit and Byte What is a bit? A bit is a unit of storage which can store only 0 or 1. A bit storage: Every 8-bit is called a byte. Every 1024 byte is a kilo-byte. Every 1024 kilo-byte is a mega-byte Every 1024 mega-byte is a giga-byte

Encoding Instructions We can have a 8-bit (one byte) operation code followed by 8 more bits (another byte) which gives details about the instruction.

Encoding Instructions We can have a 8-bit (one byte) operation code followed by 8 more bits (another byte) which gives details about the instruction. Example:

The architecture of our Computer Our hypothetical computer has an 8-bit (one byte) Accumulator.

The architecture of our Computer Our hypothetical computer has an 8-bit (one byte) Accumulator. Accumulator is a special location used for storing intermediate results of computation.

The architecture of our Computer Our hypothetical computer has an 8-bit (one byte) Accumulator. Accumulator is a special location used for storing intermediate results of computation. For Example you want to calculate: 97 + (210 – 113) you might write the result of subtraction on a piece of paper before adding the result with 97.

The architecture of our Computer Also our architecture has 256 bytes of memory labeled (addressed) with 0 to 255.

The architecture of our Computer Also our architecture has 256 bytes of memory labeled (addressed) with 0 to 255. Memory (In computer terminology): Place for storing data in binary format. Smallest unit of memory is a bit.

The architecture of our Computer Also our architecture has 256 bytes of memory labeled (addressed) with 0 to 255. Memory (In computer terminology): Place for storing data in binary format. Smallest unit of memory is a bit. The size of the memory of today’s computers is something of magnitude of giga-bytes.

The Architecture of Our Hypothetical Computer

Example of Instructions of our Computer InstructionInformationCodeExplanation LODX Loads accumulator with contents of memory location X STOX Stores accumulator value into memory location X HLTX Halts (Stops) Execution ADDX Adds contents of memory location X to accumulator

Example Now the piece of machine language we saw previously should have a meaning to you:

Example [1] [2] [3] We separate the sequences into bytes (chunks of length 8):

Example [1] [2] [3] We separate the sequences into bytes (chunks of length 8): [1] [2] [3]

Example [1] [2] [3] First byte is the code for instruction. So we must look for the corresponding instruction in the table:

Example [1] [2] [3] First byte is the code for instruction. So we must look for the corresponding instruction in the table: LOD ADD HLT

Example The second byte represents details about Instruction which is an integer in binary format: LOD ADD HLT represents 128 in decimal, represents 129 in decimal and is 0.

Example Putting all together we have : LOD 128 ADD 129 HLT 0 This is a piece of language called assembly Language.

Assembler A program that takes as its input a program written in assembly and outputs the same program written in Machine Language.

Assembler A program that takes as its input a program written in assembly and outputs the same program written in Machine Language. Sourcex LOD 128 ADD 129 HLT 0 Assembler

Going Further Now assume a programmer writes a program in a high level language such as JavaScript. The programmer needs to programs to make her/his program understandable to computer: Compiler and Assembler.

Going Further Now assume a programmer writes a program in a high level language such as JavaScript. The programmer needs to programs to make her/his program understandable to computer: Compiler and Assembler. LOD 128 ADD 129 HLT 0 Assembler Compiler …. If(x == 4) Document. write( ); ….

Assembly There are many programmers who write their programs directly in assembly as opposed to any high level language such as Java, because

Assembly There are many programmers who write their programs directly in assembly as opposed to any high level language such as Java, because – It gives the programmer a precise control of the computer’s functionalities. – In most cases the programs written directly in assembly language are faster than programs written in high level languages.

Back to our piece of Assembly code LOD 128 ADD 129 HLT 0

Back to our piece of Assembly code LOD 128 ADD 129 HLT 0 LOD 128 : Loads the contents of memory location (a byte) 128 into accumulator.

Back to our piece of Assembly code LOD 128 ADD 129 HLT 0 LOD 128 : Loads the contents of memory location (a byte) 128 into accumulator. ADD 129: Adds the number 129 to the number already in accumulator and puts the result in accumulator.

Back to our piece of Assembly code LOD 128 ADD 129 HLT 0 LOD 128 : Loads the contents of memory location (a byte) 128 into accumulator. ADD 129: Adds the number 129 to the number already in accumulator and puts the result in accumulator. HLT : Stops the process.

Another Example LOD 213 ADD 214 ADD 215 ADD 216 ADD 217 STO 213 HLT What does this program do?

The assembly Instructions for our Machine Conventions: 1.All variables refer to 8-bit binary number.

The assembly Instructions for our Machine Conventions: 1.All variables refer to 8-bit binary number. ex: LOD X X is an 8-bit number ( [0-255])

The assembly Instructions for our Machine Conventions: 1.All variables refer to 8-bit binary number. ex: LOD X X is an 8-bit number ( [0-255]) 2.Variables can represent a number or an address. A number is indicated by a leading pound sign (#).

The assembly Instructions for our Machine Conventions: 1.All variables refer to 8-bit binary number. ex: LOD X X is an 8-bit number ( [0-255]) 2.Variables can represent a number or an address. A number is indicated by a leading pound sign (#). ex: LOD 123 and LOD #123 LOD 123  Load the contents of memory location 123 into the accumulator LOD #123  Load number 123 into the accumulator.

The assembly Instructions for our Machine Another ex: ADD 212 & ADD #212 ADD 212 : Add the contents of memory location 212 to accumulator. ADD #212 : Add number 212 to accumulator. 3. We use letter A to refer to the accumulator.

Data Flow Instructions InstructionVariableExplanation LODXLoad the contents of memory location specified with address X into accumulator.,,#XLoad the number X into accumulator. STOXStore the contents of memory location specified with address X Into accumulator.,,#XStore the number X into accumulator.

Arithmetic Instructions InstructionVariableExplanation ADDXAdd the contents of memory location specified by address X to contents of accumulator.,,#XAdd the number X to contents of accumulator. SUBXSubtract the contents of memory location specified by address X from contents of accumulator.,,#XSubtract number X from contents of accumulator. MULXMultiply the contents of accumulator by the contents of memory location specified by address X.,,#XMultiply the contents of accumulator by number X.

Control Instructions A program is a sequence of instructions.

Control Instructions A program is a sequence of instructions. In normal condition during the execution of the program (assembly program in our case), the computer starts with execution of first instruction, followed by second, third and all the way to the last instruction.

Control Instructions A program is a sequence of instructions. In normal condition during the execution of the program (assembly program in our case), the computer starts with execution of first instruction, followed by second, third and all the way to the last instruction. But sometimes we want to change this normal flow of instruction executions.

Control Instructions A program is a sequence of instructions. In normal condition during the execution of the program (assembly program in our case), the computer starts with execution of first instruction, followed by second, third and all the way to the last instruction. But sometimes we want to change this normal flow of instruction executions. We use control instructions to direct the flow of instruction execution in a way that we have in mind.

Control Instructions An example of situation where we want to change the flow of execution: We have sequence of three instructions: instruction 1 instruction 2 instruction 3 and we need to run this sequence 20 times.

Control Instructions One way to write such program: instruction 1 instruction 2 instruction 3 instruction 1 instruction 2 instruction 3. instruction 1 instruction 2 instruction 3 – That is to repeat the sequence of three instructions 20 times in our program.

Control Instructions Smarter algorithm: Step 1: Set memory location X to 20 Step 2: if the contents of memory location X is not zero execute the sequence: instruction instruction 2 instruction 3 Subtract the contents of memory location X by 1 Jump to step 2 else HLT

Control Instructions InstructionVariableExplanation JMPY Jump to instruction number Y (Go to Y-th instruction in the program ) JMZYJump to instruction number Y if the contents of accumulator is 0. Otherwise, go to next instruction. HLTHalt execution (Stop the execution). Don’t do anything more.

Example 1 LOD 213 ADD 214 ADD 215 ADD 216 ADD 217 STO 213 HLT

Example 2 LOD 212 ;Load the memory location 212 into accumulator ADD #1 ;Add one to accumulator STO 213 ;Store the contents of accumulator into memory ADD #1 ;location 213 STO 214 ADD #1 STO 215 HLT

Comment Comments are little explanatory notes for programmers inside the program.

Comment Comments are little explanatory notes for programmers inside the program. In our assembly language, a comment is anything from the semicolon (;) to the end of the line.

Comment Comments are little explanatory notes for programmers inside the program. In our assembly language, a comment is anything from the semicolon (;) to the end of the line. These notes are ignored by assembler. That is they have no effect on what the programs do.

Do it yourself. What number in binary format will be in memory location 197 at the end of the program? LOD #2 ;Load the number 2 into accumulator. MUL #2 MUL #2 ;Multiply by 2 the contents of accumulator. ADD #2 SUB #2 ;Subtract 2 from the contents of the accumulator. STO 197 HLT

Here is a program which uses some of the control instructions. [1] LD #0 [2] STO 123 [3] SUB 210 [4] JMZ 9 ; Jump to instruction 9 if the contents of acc. is 0 [5] LD 123 [6] ADD #1 [7] STO 123 [8] JMP 3 ;Jump to instruction 3 [9] HLT Can you write a simpler program which does the same job? What will the program do if we change number 210 to 55 in line 3 ? Using Control Instructions