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

Explain the term thread scheduling, Problem: a) Most RMI and RPC system...

Problem: a) Most RMI and RPC systems expect to be supported by the "Request-Reply Protocol". Describe what "Request-Reply Protocol" is. b) Describe the invocation semantics

How two domain servers having same set of names, Does it makes sense for tw...

Does it makes sense for two domain servers to contain exactly the same set of names? Why or why not? Yes. This is very advantageous for 2-domain servers having same set of name

Define congestion and grade of service, Define congestion and grade of serv...

Define congestion and grade of service. Congestion : This is uneconomic to give sufficient equipment to carry all the traffic which could possibly be offered to a telec

Explain the working of assembler, Explain the working of Assembler? An ...

Explain the working of Assembler? An assembler is the computer program for translating assembly language fundamentally a mnemonic representation of machine language into object

Interrupt handling - computer architecture, Interrupt handling: Handlin...

Interrupt handling: Handling Interrupts  Several  situations where the processor should avoid interrupt requests Interrupt-enable Interrupt-disable  Typical

How transmission bridges help in satisfying the connectivity, How do tra...

How do transmission bridges help in satisfying the connectivity? A usual transmission bridge is demonstrated in figure. The series capacitance and the shunt inductances of

Design a mod-5 synchronous counter using J-Kflip-flops, What are synchronou...

What are synchronous counters? Design a Mod-5 synchronous counter using J-K Flip-Flops. Ans. Synchronous Counters : It means that all flip-flops are clocked concurrently. T

What are pooled tables, Normal 0 false false false EN-I...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

Add references dialog box, What is the difference among "using System.Data;...

What is the difference among "using System.Data;" and directly adding the reference from "Add References Dialog Box"?  When you compile a program using command line, you add th

Array of discount rates, Why do you think you are asked to do valuation giv...

Why do you think you are asked to do valuation given an array of discount rates? a.    Would it not be extra accurate to utilize, for intsnces , CAPM to calculate cost of equity

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