Presentation is loading. Please wait.

Presentation is loading. Please wait.

Operators & Identifiers The Data Elements. Arithmetic Operators exponentiation multiplication division ( real ) division ( integer quotient ) division.

Similar presentations


Presentation on theme: "Operators & Identifiers The Data Elements. Arithmetic Operators exponentiation multiplication division ( real ) division ( integer quotient ) division."— Presentation transcript:

1 Operators & Identifiers The Data Elements

2 Arithmetic Operators exponentiation multiplication division ( real ) division ( integer quotient ) division ( integer remainder ) addition Subtraction assignment ^ * / \ Mod + - =

3 Evaluate these expressions = 100 / 10 / 5 = 100 / 10 \ 5 = 100 \ 10 / 5 = 100 + 10 Mod 5 = 100 + 10 \ 5

4 Evaluate these expressions = 100 / 10 / 52 = 100 / 10 \ 5 = 100 \ 10 / 5 = 100 + 10 Mod 5 = 100 + 10 \ 5

5 Evaluate these expressions = 100 / 10 / 52 = 100 / 10 \ 52 = 100 \ 10 / 5 = 100 + 10 Mod 5 = 100 + 10 \ 5

6 Evaluate these expressions = 100 / 10 / 52 = 100 / 10 \ 52 = 100 \ 10 / 550 = 100 + 10 Mod 5 = 100 + 10 \ 5

7 Evaluate these expressions = 100 / 10 / 52 = 100 / 10 \ 52 = 100 \ 10 / 550 = 100 + 10 Mod 5100 = 100 + 10 \ 5

8 Evaluate these expressions = 100 / 10 / 52 = 100 / 10 \ 52 = 100 \ 10 / 550 = 100 + 10 Mod 5100 = 100 + 10 \ 5102

9 Variables A variable is a string used to identify a memory location. The amount of memory is determined by the type of data that it will store. Typically, variable names need to be declared so the operating system can allocate sufficient space. Then values of the specified type can be assigned, i.e. stored in that location.

10 Variable names Must begin with a letter –Can include letters and numerals –Cannot include spaces Use names that are descriptive Capitalising convention –InterestRate, InitialCapital

11 Variables Local –Declared within a subprogram –Dim varName As dataType Global –Declared at the top of the code listing –Private varName As dataType

12 Data Types

13 The ASCII Character Set Hex0123456789ABCDEF Binary 0000000100100011010001010110011110001001101010111100110111101111 0 0000 BSHTLF CR 1 0001 ESC 2 0010 !"#$%&'()*+,-./ 3 0011 0123456789:;<=>? 4 0100 @ABCDEFGHIJKLMNO 5 0101 PQRSTUVWXYZ[\]^_ 6 0110 `abcdefghijklmno 7 0111 pqrstuvwxyz{|}~DEL

14 Data Storage 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 128 64 32 16 8 4 2 1 1 1 1 1 1 1 1 1 128 +64 +32 +16 +8 +4 + 2 + 1 =255

15 Data Storage (2nd byte) 2 15 2 14 2 13 2 12 2 11 2 10 2 9 2 8 32768 16384 8192 4096 2048 1024 512 256 1 1 1 1 1 1 1 1 32768+16384 +8192 +4096 +2048 +1024 +512 +256 =65280 +255 65535 The largest Unsigned value that can be stored in 16 bits. How many different patterns?

16 Integer Storage To store integers, half the combinations are used to represent negative values. The range for Integer type variables is: -32,768 to +32767 The MSB is used to represent the sign. Which value of the sign bit (0 or 1) will represent a negative number?

17 2’s Complement Notation (examples in 8 bits to save space) The notation system that uses 1 to represent negative values. Fixed length notation system. Zero is the first non-negative value: 00000000 The pattern immediately before zero is -1 11111111 The largest value is stored as 01111111 The smallest value is stored as 10000000

18 Arithmetic in 2’s Complement (remember it’s a fixed length system) 00 + 00 = 00 00 + 01 = 01 01 + 00 = 01 01 + 01 = 10 in 2’s complement 11111111 + 1 in 2’s complement +00000001 0 discard the carry bit 100000000

19 Long Integer Storage (4 bytes) High order bit (MSB) is worth 2 31 The number of different combinations =2 32 =4,294,967,296 Half are used for negative values, so the range is –2,147,483,648 to + 2,147,483,647

20 Fractions A radix separates the integer part from the fraction part of a number. 101.101 Columns to the right of the radix have negative powers of 2.

21 Fractions 2 2121 2020.2 -1 2 -2 2 -3

22 Fractions 2 2121 2020.2 -1 2 -2 2 -3 421.½¼⅛

23 Fractions 2 2121 2020.2 -1 2 -2 2 -3 421.½¼⅛ 101.101

24 Fractions 2 2121 2020.2 -1 2 -2 2 -3 421.½¼⅛ 101.101 4+1+½+⅛

25 Fractions 2 2121 2020.2 -1 2 -2 2 -3 421.½¼⅛ 101.101 4+1+½+⅛ 5⅝5⅝

26 Scientific Notation Very large and very small numbers are often represented such that their order of magnitude can be compared. The basic concept is an exponentional notation using powers of 10. a × 10 b Where b is an integer, and a is a real number such that: 1 ≤ |a| < 10

27 Scientific Notation An electron's mass is about 0.00000000000000000000000000000091093826 kg. In scientific notation, this is written 9.1093826×10 −31 kg. The Earth's mass is about 5,973,600,000,000,000,000,000,000 kg. In scientific notation, this is written 5.9736×10 24 kg.

28 E Notation To allow values like this to be expressed on calculators and early terminals × 10 b was replaced by Eb So 9.1093826×10 −31 becomes 9.1093826E−31 And 5.9736×10 24 becomes 5.9736E+24

29 E Notation The ‘a’ part of the number is called the mantissa or significand. The ‘Eb’ part is called the exponent. Since these numbers could also be negative they would typically have a sign as well.

30 Floating Point Storage In floating point the bit pattern is divided into 3 components: Sign – 1 bit (0 for +, 1 for -) Exponent – stored in Excess notation Mantissa – must begin with 1

31 Excess Notation (examples in 8 bits to save space) The notation system that uses 0 to represent negative values. Fixed length notation system. Zero is the first non-negative value: –10000000 The pattern immediately before zero is -1 –01111111 The largest value is stored as 11111111 The smallest value is stored as 00000000

32 Mantissa Assumes a radix point immediately left of the first digit. The exponent will determine how far and in which directionto move the radix.

33 An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001

34 An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001 Separate it into its components:

35 An example in 8 bits If the following pattern stores a floating point value, what is it? 01101001 Separate it into its components: sign exponent mantissa

36 An example in 8 bits If the following pattern stores a floating point value, what is it? 0 110 1001 Separate it into its components: sign exponent mantissa

37 An example in 8 bits 0 110 1001 A sign bit of 0 means the number is…?

38 An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to …?

39 An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa …

40 An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa.1001 Put it all together …

41 An example in 8 bits 0 110 1001 A sign bit of 0 means the number is positive. 110 in Excess Notation converts to +2. Place the radix in the mantissa.1001 Put it all together … +.1001 * 2 2

42 An example in 8 bits +.1001 * 2 2 Multiplying a binary number by 2 shifts the bits left (move the radix to the right) one position. So the exponent tells us to shift the radix 2 positions right. + 10.01 = 2¼

43 Normal Form The first bit of the mantissa must be 1 to prevent multiple representations of the same value. Otherwise… 0 100 1000 0.1000 0 101 0100 1.0100.1000 0 110 0010 2.0010.1000 0 111 0001 3.0001.1000

44 Data Type Conversion


Download ppt "Operators & Identifiers The Data Elements. Arithmetic Operators exponentiation multiplication division ( real ) division ( integer quotient ) division."

Similar presentations


Ads by Google