1 / 21

Bits and Bytes

Bits and Bytes. COMP 21000 Comp Org & Assembly Lang. Topics Why bits? Representing information as bits Binary / Hexadecimal Byte representations Numbers Characters and strings Instructions Bit-level manipulations Boolean algebra Expressing in C. Why Don’t Computers Use Base 10?.

buds
Télécharger la présentation

Bits and Bytes

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bits and Bytes COMP 21000 Comp Org & Assembly Lang Topics • Why bits? • Representing information as bits • Binary / Hexadecimal • Byte representations • Numbers • Characters and strings • Instructions • Bit-level manipulations • Boolean algebra • Expressing in C

  2. Why Don’t Computers Use Base 10? Base 10 Number Representation • That’s why fingers are known as “digits” • Natural representation for financial transactions • Floating point number cannot exactly represent $1.20 • Even carries through in scientific notation • 15.213 X 103 (1.5213e4)

  3. Why Don’t Computers Use Base 10? Implementing Electronically • Hard to store • ENIAC (First electronic computer) used 10 vacuum tubes / digit • IBM 650 used 5+2 bits (1958, successor to IBM’s Personal Automatic Computer, PAC from 1956) • Hard to transmit • Need high precision to encode 10 signal levels on single wire • Messy to implement digital logic functions • Addition, multiplication, etc.

  4. 0 1 0 3.3V 2.8V 0.5V 0.0V Binary Representations Base 2 Number Representation • Represent 1521310 as 111011011011012 • Represent 1.2010 as 1.0011001100110011[0011]…2 • Represent 1.5213 X 104 as 1.11011011011012 X 213 Electronic Implementation • Easy to store with bistable elements • Reliably transmitted on noisy and inaccurate wires

  5. Decimal Binary Hex 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 A 10 1010 B 11 1011 C 12 1100 D 13 1101 E 14 1110 F 15 1111 Encoding Byte Values Byte = 8 bits • Binary 000000002 to 111111112 • Decimal: 010 to 25510 • First digit must not be 0 in C • Octal: 0008 to 03778 • Use leading 0 in C • Hexadecimal 0016 to FF16 • Base 16 number representation • Use characters ‘0’ to ‘9’ and ‘A’ to ‘F’ • Use leading 0x in C, • write FA1D37B16 as 0xFA1D37B • Or 0xfa1d37b

  6. Bases Every number system uses a base Decimal numbers use base 10 Other common bases used in computer science: • Octal (base 8) • Hexadecimal (base 16) • Binary (base 2)

  7. Decimal 753 7 x 102 + 5 x 101 + 3 x 100

  8. Octal 753 7 x 82 + 5 x 81 + 3 x 80

  9. Counting in octal

  10. Converting Converting octal to decimal: • 753 = 7 x 82 + 5 x 81 + 3 x 80 = 448 + 40 + 3 = 491

  11. Translating to octalwriting 157 in base 8 157 remainder: 8 19 5 2 3 0 2 2 3 5 2 x 82 + 3 x 81 + 5 x 80 = 128 + 24 + 5 = 157 Divisor

  12. Hexadecimal 753 7 x 162 + 5 x 161 + 3 x 160

  13. Hexadecimal 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20 21 22 23 24 25 26 27 28 29 2A 2B 2C 2D 2E 2F 30 31 32 33 34 35 36 37 38 39 3A 3B 3C 3D 3E 3F 40 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 5B 5C 5D 5E 5F 60 61 62 63 64 65 66 67 68 69 6A 6B 6C 6D 6E 6F 70 71 72 73 74 75 76 77 78 79 7A 7B 7C 7D 7E 7F 80 81 82 83 84 85 86 87 88 89 8A 8B 8C 8D 8E 8F 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 10A 10B 10C 10D 10E 10F 120 …

  14. Translating to hex 365 remainder: 16 22 D 1 6 0 1 1 6 D 1 x 162 + 6 x 161 + D x 160 = 256 + 96 + 13 = 365

  15. Binary 101 1 x 22 + 0 x 21 + 1 x 20

  16. Counting in binary

  17. Translating to binary 4 remainder: 2 2 0 1 0 0 1 Divisor 1 0 0

  18. Translating to binary 11 remainder: 2 5 1 2 1 1 0 0 1 1 0 1 1

  19. Literary Hex Common 8-byte hex filler: • 0xdeadbeef • Can you think of other 8-byte fillers?

  20. Relation between hex and binary • Hexadecimal: • 16 characters, • Each represents a number between 0 and 15 • Binary: • Consider 4 places • Represent numbers between 0000 and 1111 • Or between 0 and 15 • Result: • 1 hex digit represents 4 binary digits

  21. Relation between hex and binary

More Related