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

Set up the minunit test framework - mortgage code, Set up the minunit test ...

Set up the minunit test framework examples in your environment (i.e. build or compile the code). Once you can run the example, use the minunit test framework to create and run a bo

Designing logic circuits, When designing a logic circuit with multipleoutpu...

When designing a logic circuit with multipleoutputs it is usual to treat it as several circuitseach with one output. So for our example wewould design three circuits; one with outp

What are the features of the hardwired control, What are the features of th...

What are the features of the hardwired control? A controller that uses this approach can function at high speed. It has little flexibility and the complexity of the instruction

State in brief about virtual memory, What is Virtual memory The term v...

What is Virtual memory The term virtual memory signifies something that appears to be present though actually it is not. Virtual memory technique enables users to use more mem

Shell scripting, Write a script called addnames that is to be called as fol...

Write a script called addnames that is to be called as follows, where classlist is the name of the classlist file, and username is a particular student''s username. ./addnames cla

Memory-to-memory architecture:, Memory-to-Memory Architecture : The pipe...

Memory-to-Memory Architecture : The pipelines can access vector operands, intermediate and final results directly in the main memory. This needs the higher memory bandwidth. How

Write shorts notes on sliding window protocol, Write shorts notes on Slidin...

Write shorts notes on Sliding Window Protocol To acquire high throughput rates, protocols employ a flow control technique termed as sliding window. Both, the sender and receive

Cryptarithmetic problem in artificial intelligence, Solve the following cry...

Solve the following cryptarithmetic problem using Prolog: P I N G P O N G + F U N --------- I G N I P Each of the 7 different letters stands for a different digit. The

Logical database reads the data from the database, Is it true that the Logi...

Is it true that the Logical Database reads the data from the database tables using Select Statements. Yes. We are coding that in Database part of LDB.

Propositional versions of resolution, Propositional versions of resolution:...

Propositional versions of resolution: Just because of so far we've only looked at propositional versions of resolution. However in first-order logic we require to also deal wi

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