Embedded system design using c, Computer Engineering

Assignment Help:

W To date we have discussed elementary high level language programming and low level assembler programming, one of the benefits of C is the integration of both , this requires a revisit to 'C' to discover advanced features.

Number ranges and logical expression within C

  Within C we have seen and used various type functions i.e. int, char, Boolean, float. These types are limited in storage size, consider the following example.

Example
  
  Write a program to input two integer numbers and display the addition.
 
Answer
 
  #include stdio.h
  void main()
  {
  /*Author : Mr James Mc Carren 
  Company: Staffordshire University 
   Date: 26th August 2012 
  Version 1.0 
  Function : To add two integers numbers together       
   Modifications:   none*/
  char prompt;
  short int a,b;
  printf("Please enter in number 1  : ");
  scanf("%d",&a);
  printf("\n\rPlease enter in number 2 :");
  scanf("%d",&b);
  printf("\n\r The total of %d + %d is %d",a,b,a+b);
  printf("Press any key to exit \n\r");
  scanf("\n%c",&prompt);
  }   
 
  If we enter in the following numbers 
 
  Number 1 40000
  Number 2 50000
 
The program produces
 
  Please enter in number 1  : 40000
 
  Please enter in number 2 :  50000
 
   The total of -25536 +-15536 is 24464

 There appears to be a limit on the maximum number stored in a integer variable.  This is true for all the variables used so far i.e
 
  Char    127 to -128
  int    32767 to -32768
  float     3.40282347e+38 to 1.17549435e-38
 
To extend these ranges we can use extended types i.e
 
  long int    2147483647 to -2147483648
  double   1.7976931348623157e+308 to 2.2250738585072014e-308
 
To extend the ranges even further we can use the unsigned type, this removes the sign space. This is commonly used in microprocessor development systems are hex/binary is rarely signed i.e.

     unsigned char 
    unsigned int
    unsigned  float
    unsigned double
    unsigned long int

This is why when we cast data; it may not always work i.e trying to fit a float into a int,  Because a float is physically bigger than an int . Coupled with this is a extended range of format commands i.e. %lx %ld ' long hex long decimal' %ux %ud ' unsigned long hex unsigned long int.


Related Discussions:- Embedded system design using c

Classification according to part of instruction and data, Classification ac...

Classification according to part of instruction and data: According to the parts of instruction and data, following parts are identified under this classification: Scal

Explain about double error detection bit, Q. Explain about Double Error Det...

Q. Explain about Double Error Detection bit? Let's presume now that two bit errors take place in data. Data received: So on -matching we conclude P3-D3 pair doesn't

Wrapping database calls into mts transactions, What is the advantage of wra...

What is the advantage of wrapping database calls into MTS transactions? Ans) If database calls are made within the context of a transaction, aborting the transaction will undo a

Argument be passed to a subroutine in programming, How many ways can an arg...

How many ways can an argument be passed to a subroutine in programming? Ans)  An argument can be passed in two way in a programming language. They are Pass by Value and Passi

Determine the begin - end keywords, Determine the begin - end keywords ...

Determine the begin - end keywords Group several statements together. Cause the statements to be evaluated sequentially (one at a time) -> Any timing within sequential group

Explain about bus of register transfer, Explain about Bus of register trans...

Explain about Bus of register transfer Since a computer has   several registers, paths must be provided to transfer information among registors. If separate lines are used amon

Difficulties - canonical genetic algorithm, Difficulties - canonical geneti...

Difficulties - canonical genetic algorithm: Therefore the first big problem we face whether designing an "AI" agent to perform a GA-style search is how to represent the soluti

What is input - output instructions, Q. What is Input - Output Instructions...

Q. What is Input - Output Instructions? An I/O instruction is stored in memory of computer and is fetched as well as executed by processor producing an I/O-related command for

Program in java, Write a program to display grade message according to the ...

Write a program to display grade message according to the marks

Bilinear interpolated images , Transfer  Functions Change the last bili...

Transfer  Functions Change the last bilinear interpolated images and the original images into the frequency domain using the FFT.  Try to measure the magnitude transfer functio

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