How does the computer execute a program, Computer Engineering

Assignment Help:

Let's attempt to answer a fundamental question: 'How does the Computer execute a Program?' Let's describe this with the help of an example from higher level language domain.

Problem:  Write a program to add two numbers.

A sample C program (Assuming two fixed values of numbers as a = 5 and b = 2)

1.  #include < stdio.h >

2. main ()

3.    {

4.  int a =5, b=2, c;

5. c= a+b;

6. printf ("\n The added value is: % d", c);   

7.           }

Program at line 4 states variables which will be equal to 3 memory locations that are a, b and c.  At line 5 these variables are added along with at line 6 value of c is printed.

However how will these instructions be executed by CPU? First you have to compile this program to convert it to machine language. Though how will the machine instructions look like? Let's suppose a hypothetical instruction set of machines of a size of 16 binary digits (bits) data and instructions. Each one of the instruction of machine comprises two components: (a) Operation code which specifies the operation which is to be performed by instruction and (b) Address of operand in memory on that given operation is to be performed.

Let's further presume that size of operation code is supposed to be of six bits consequently rest 10 bits are for address of operand. Also the memory word size is presumed to be of 16 bits. Figure below shows instruction and data formats for this machine.  To simplify our discussion let's present operation code employing Mnemonics such as ADD, LOAD, STORE and signed decimal values for data and decimal values of operand addresses. 

756_How does the Computer execute a Program.png


Related Discussions:- How does the computer execute a program

Way to interconnect multiple computer across short distance, A computer com...

A computer communication technology that gives a way to interconnect multiple computer across short distance is LAN

Manipulating numbers, Computers manipulate numbers - but decimalnumbers wit...

Computers manipulate numbers - but decimalnumbers with digits 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 cannot be represented using two states of a digitalcircuit.Instead decimal numbers are co

more data items and methods, Create a class called ticket that records the...

Create a class called ticket that records the information of a performance ticket.The class should include at least six data items: performanceId, seatRow, seatNo, class, price, da

What is rom, What is ROM? Read only memory [ROM] is used for storing pr...

What is ROM? Read only memory [ROM] is used for storing programs that are permanently resident in the computer and for tables of constants that do not change in value as the pr

Define protocol, Define Protocol. It is a set of rules that are followe...

Define Protocol. It is a set of rules that are followed by interconnecting computers and terminals to make sure the orderly transfer of information

Explain about hexadecimal numbers system, Q. Explain about Hexadecimal Numb...

Q. Explain about Hexadecimal Numbers system? Hexadecimal system has 16 digits that are represented as 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F. A number (F2) H is equivalent to

Differentiate between unit testing and integration testing, Unit testing an...

Unit testing and integration testing: Unit testing focuses on the least element of software design by the module. Unit test is conducted on every of the modules to uncover er

How to create a rollover image, Q. How to Create a Rollover Image? A ro...

Q. How to Create a Rollover Image? A rollover image is an image whose display changes when pointer passes ('rolls') over it. You will use Dreamweaver's Insert Rollover Image co

Define congestion and grade of service, Define congestion and grade of serv...

Define congestion and grade of service. Congestion : This is uneconomic to give sufficient equipment to carry all the traffic which could possibly be offered to a telec

Write a subroutine in c for toggling the cursor, Write a subroutine in C fo...

Write a subroutine in C for toggling the cursor using old directives. ; ; use small memory model for C - near code segment _DATA SEGMENT WORD   'DATA'   CURVAL EQU   [B

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd