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 is called all exceptions in java, Al l exceptions in Java are subclass...

Al l exceptions in Java are subclasses of built in class called? Each exception in Java are subclasses of make in class termed as Throwable.

What is a process scheduling, What is a Process Scheduling? Scheduling...

What is a Process Scheduling? Scheduling is a key element of the workload management software that usually performs several or all of: Queuing Scheduling Monito

Perform division in binary showing contents of accumulator, Q. Perform divi...

Q. Perform division in binary showing contents of accumulator, B register and Y register during each step. (Accumulator, B, Y are 5-bit registers) 13 / 2

Write the truth table to realize the function nand gate, For F = A.B.C +...

For F = A.B.C + B.C.D ‾ + A ‾.B.C, write  the  truth  table to realize the function using NAND gates only ? Ans. Logic Function given as F = ABC + BC‾D + A‾BC, simplification o

Demultiplexers, Explain briefly about demultiplexers?

Explain briefly about demultiplexers?

What is set screen, SET SCREEN With SET SCREEN the present screen simpl...

SET SCREEN With SET SCREEN the present screen simply specifies the next screen in the chain , control branches to this next screen  as soon as the current screen has been proce

Interconnection network in the form of a linear array, Q. Interconnection n...

Q. Interconnection network in the form of a Linear Array? The sorting problem particularly selected is bubble sort and interconnection network may be represented as n processor

Hardware implementation for signed-magnitude data, Hardware Implementation ...

Hardware Implementation for signed-magnitude data When multiplication  is  implemented  in  digital  computer,  we  change  process lightly. Here, in place of providing registe

Describe memory and memory unit, Q. Describe Memory and Memory unit? In...

Q. Describe Memory and Memory unit? Input devices can fetch instructions or data only sequentially though a program may or may not be executed sequentially because looping, jum

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