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

What are the steps include constructing a functional model, What are the St...

What are the Steps include constructing a Functional Model Recognize input and output values Build data flow diagrams which shows functional dependencies Explain

What is task gantt, Task Gantt   Task Gantt shows different tasks being...

Task Gantt   Task Gantt shows different tasks being performed it implies that numerous kind of activities by set of processors connected to parallel computer as displayed in Fi

Mips assembly language equivalents , MIPS' native assembly code only has tw...

MIPS' native assembly code only has two branch instructions, beq and bne, and only one comparison instruction, slt. Using just these three instructions (along with the ori instruct

Design requirements of sequential circuit, What are the Requirements to des...

What are the Requirements to design Sequential circuit Ans . Design Requirements of Sequential circuit: (i) The circuit specifications translated into a state diagram

Define dynamic loading, Define dynamic loading. To get better memory-sp...

Define dynamic loading. To get better memory-space utilization dynamic loading is used. With dynamic loading, a routine is not loaded unless it is called. All routines are kept

Computer science, Read in integers until a zero is read in. Keep a total o...

Read in integers until a zero is read in. Keep a total of both the quantity and the sum of the negative integers and the positive integers. Once a zero is read in (signifying the

Which class used for multicasting in ip addressing scheme, In IP addressing...

In IP addressing scheme, class used for multicasting is: A class used for multicasting in IP addressing scheme is class D.

Draw a neat labelled diagram of the osi reference model, Draw a neat labell...

Draw a neat labelled diagram of the OSI reference model for computer networks showing all the layers and the communication subnet boundary. The computer network consists of all

What is meant by a priority encoder, What is meant by a priority encoder? ...

What is meant by a priority encoder? Ans: Priority encoder- Basically an encoder is a combinational circuit which performs the inverse operation of a decoder. The input c

Threads, First, remember that different processes keep their own data in di...

First, remember that different processes keep their own data in distinct address spaces. Threads, on the other hand, explicitly share their entire address space with one another. A

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