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

Structure of internet servers address, Structure of Internet Servers Addres...

Structure of Internet Servers Address Structure of an Internet server's address keyed into a client's software is as below: http://www.expertsmind.com Where: htt

Show the mips addressing modes, Q. Show the MIPS Addressing Modes? MIP...

Q. Show the MIPS Addressing Modes? MIPS Addressing Modes MIPS employs various addressing modes: 1. Uses Register as well asimmediate addressing modes for operations.

Define compilers and interpreters with high level language, Define compiler...

Define compilers and interpreters with high level language? Both compilers and interpreters are available for most high-level languages. Though LISP and BASIC are in particular

Explain level of a node, Level of a node The root is at level zero and ...

Level of a node The root is at level zero and the level of the node is 1 more than the level of its parent

Where shared resources are accessed, A critical section is a program segmen...

A critical section is a program segment? Ans. A critical section is a program segment where shared resources are accessed.

What is parallel computing, Parallel computing has been a topic of interes...

Parallel computing has been a topic of interest in computing society over the previous few decades. Ever-growing amount of databases and increasing complexity of new problems are

Convert number to hexadecimal and decimal, Perform the following calculatio...

Perform the following calculations assuming that all numbers are stored in 16-bit registers as 2's complement binary numbers with no overflow provision. Convert each of the numbers

Derivatives and applications of derivatives, What can you say about the exi...

What can you say about the existence of a stationary point in the interval [ 1; 3] for the function f (x) = x 2 2x 3.

Define the node of object oriented modeling, Define the node of object orie...

Define the node of object oriented modeling A node is a physical element which exists at runtime and represents a computational resource usually having a large memory and often

Implement the concept of true and radix minus one complement, Q. Develop a...

Q. Develop a program to implement the concept of true and radix minus one complement. Program should ask for radix and two numbers from that radix. For that two numbers program

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