programming design
play

Programming Design Digital Systems Ling-Chieh Kung Department of - PowerPoint PPT Presentation

Number systems Complements Digital circuits Miscellaneous things Programming Design Digital Systems Ling-Chieh Kung Department of Information Management National Taiwan University Programming Design Selection and Repetition 1 / 61


  1. Number systems Complements Digital circuits Miscellaneous things Programming Design Digital Systems Ling-Chieh Kung Department of Information Management National Taiwan University Programming Design – Selection and Repetition 1 / 61 Ling-Chieh Kung (NTU IM)

  2. Number systems Complements Digital circuits Miscellaneous things Thank you • Most of the materials in this set of slides are adopted from the teaching materials of Professor Yuh-Jzer Joung’s ( 莊裕澤 ). – Who failed the instructor in the course “Introduction to Computer Science”. https://www.stpi.narl.org.tw/public/leader.htm Programming Design – Selection and Repetition 2 / 61 Ling-Chieh Kung (NTU IM)

  3. Number systems Complements Digital circuits Miscellaneous things Road map • Number systems • Complements • Digital circuits • Miscellaneous things Programming Design – Selection and Repetition 3 / 61 Ling-Chieh Kung (NTU IM)

  4. Number systems Complements Digital circuits Miscellaneous things Number systems decimal numbers: 7397 = 7  10 3 + 3  10 2 + 9  10 1 + 7  10 0 • • In general, a 4 a 3 a 2 a 1 a 0 . a -1 a -2 = a 4  10 4 + a 3  10 3 + a 2  10 2 + a 1  10 1 + a 0  10 0 + a -1  10 -1 + a -2  10 -2 – a i : coefficient – 10: base or radix – a 4 : most significant bit ( msb ) – a -2 : least significant bit ( lsb ) Programming Design – Selection and Repetition 4 / 61 Ling-Chieh Kung (NTU IM)

  5. Number systems Complements Digital circuits Miscellaneous things Base- 𝑠 system • In general, number X in a base- 𝐬 system is represented as X = ( a n a n-1 ......a 1 a 0 .a -1 a -2 ......a -m ) which has the value X = a n r n + a n- 1 r n- 1 + ...... + a 1 r + a 0 + a - 1 r - 1 + a - 2 r - 2 + ...... + a -m r -m . In a binary system, r = 2, a i  {0, 1}. • In an octal system, r = 8, a i  {0,1, … ,7}. • In a decimal system, r = 10, a i  {0,1, … ,9}. • In a hexadecimal system, r = 16, a i  {0,1, … 9,A,B,C,D,E,F}. • Programming Design – Selection and Repetition 5 / 61 Ling-Chieh Kung (NTU IM)

  6. Number systems Complements Digital circuits Miscellaneous things Base conversion • Base- r to base-10 conversion: Straightforward! • Base- r to base- s conversion: By repeated division for integers and repeated multiplication for fractions . • Example. Converting (153.513) 10 to an octal number. Integer part: (153) 10 = (231) 8 remainder 153 8 (231) 8 8 19 1 3 2 Programming Design – Selection and Repetition 6 / 61 Ling-Chieh Kung (NTU IM)

  7. Number systems Complements Digital circuits Miscellaneous things Base conversion – fractional part: 0.513 0.513  8 = 4 .104 0.104  8 = 0 .832 0.832  8 = 6 .656 0.656  8 = 5 .24 … (0.513) 10 = (0. 4065 … ) 8 All together: (153.513) 10 = (231.4065 … ) 8 Programming Design – Selection and Repetition 7 / 61 Ling-Chieh Kung (NTU IM)

  8. Number systems Complements Digital circuits Miscellaneous things Base conversion: integer part X = a n r n + a n- 1 r n- 1 + ...... + a 1 r + a 0 + a - 1 r - 1 + a - 2 r - 2 + ...... + a -m r -m . • Consider the integer part: XI = a n r n + a n- 1 r n- 1 + ...... + a 1 r + a 0 . • • By dividing XI by r, we obtain              n 1 n 2 n 3 XI a r a r a r ... a r a   n n 1 n 2 2 1 r and the remainder is a 0 • By dividing XI/r by r, we obtain           n 2 n 3 XI a r a r ... a r a  1 3 2 2 n n r and the remainder is a 1 Programming Design – Selection and Repetition 8 / 61 Ling-Chieh Kung (NTU IM)

  9. Number systems Complements Digital circuits Miscellaneous things Base conversion: integer part By dividing XI/r 2 by r, we obtain •           n 3 n 4 XI a r a r ... a r a  1 4 3 3 n n r and the remainder is a 2 . • Continually in this fashion, we eventually obtain the coefficients a n a n −1 a n −2 … a 1 a 0 Programming Design – Selection and Repetition 9 / 61 Ling-Chieh Kung (NTU IM)

  10. Number systems Complements Digital circuits Miscellaneous things Base conversion: fraction part Consider the faction part: XF = a - 1 r - 1 + a - 2 r - 2 + ...... + a -m r -m . • • By multiplying XF by r, we obtain                  1 2 2 1 m m XF r a a r a r ... a r a r       1 2 3 1 m m integer in < 1 between 0.. r − 1 Because the maximum value of this part is                   1 2 m 2 m 1 ( r 1 ) r ( r 1 ) r ... ( r 1 ) r ( r 1 ) r             1 2 3 m 1 ( 1 ) ( ... ) r r r r r 1     ( r 1 ) 1  ( r 1 ) Programming Design – Selection and Repetition 10 / 61 Ling-Chieh Kung (NTU IM)

  11. Number systems Complements Digital circuits Miscellaneous things Base conversion: fraction part By continually multiplying the fraction part of XF  r, we obtain •              1 m 3 m 2 ... XF a a r a r a r      1 2 3 m 1 m integer in < 1 between 0.. r − 1 So we obtain the second digit a −2 . • Similarly, by continually multiplying the fraction part of XF 1 , we can obtain the third digit a −3 , then a −4 , then a −5 , and so on. Programming Design – Selection and Repetition 11 / 61 Ling-Chieh Kung (NTU IM)

  12. Number systems Complements Digital circuits Miscellaneous things Base 2 i to base 2 j Conversion between base 2 i to base 2 j can be done more quickly. • – Example. Convert (10111010011) 2 to octal and hexadecimal 10111010011 10 111 010 011 (2 7 2 3) 8 2 7 2 3 10111010011 101 1101 0011 (5 D 3) 16 5 D 3 Programming Design – Selection and Repetition 12 / 61 Ling-Chieh Kung (NTU IM)

  13. Number systems Complements Digital circuits Miscellaneous things Base 2 i to base 2 j • Example. Convert (12A7F) 16 to binary and octal. (12A7F) 16 (0001 0010 1010 0111 1111) 2 (00 010 010 101 001 111 111) 2 (2 2 5 1 7 7) 8 2 2 5 1 7 7 Programming Design – Selection and Repetition 13 / 61 Ling-Chieh Kung (NTU IM)

  14. Number systems Complements Digital circuits Miscellaneous things Road map • Number systems • Complements • Digital circuits • Miscellaneous things Programming Design – Selection and Repetition 14 / 61 Ling-Chieh Kung (NTU IM)

  15. Number systems Complements Digital circuits Miscellaneous things Addition/subtraction for binary numbers • In our mind, subtraction appears to take a different approach from addition. • The difference will complicate the design of a logical circuit. Addition Subtraction 9 1001 9 1001  13  1101 + 13 + 1101  4 ? 22 10110 • The problem can be solved if we can represent “ negative ” numbers (so that subtraction becomes addition to a negative number.) Programming Design – Selection and Repetition 15 / 61 Ling-Chieh Kung (NTU IM)

  16. Number systems Complements Digital circuits Miscellaneous things Complement: for simplifying subtraction • Two types of complements for each base-r system: – ( r  1) ’ s complement – r ’ s complement The (r- 1)’s complement of an n -digital number X : ( r n  1)  X • • Example. In decimal system, the 9 ’ s complement of 546700 is (10 6  1)  546700 = 999999  546700 = 453299 • Example. The 9 ’ s complement of 012398 is 999999  012398 = 987601 • Example. The 1 ’ s complement of 01011000 is (2 8  1)  01011000 = 11111111  01011000 = 10100111 • Example. The 1 ’ s complement of 0101101 is 1010010. Programming Design – Selection and Repetition 16 / 61 Ling-Chieh Kung (NTU IM)

  17. Number systems Complements Digital circuits Miscellaneous things 8- bit 1’s complement numbers 0 0000 0000 1 0000 0001 all positive numbers 2 0000 0010 begin with 0 … 127 0111 1111 − 127 1000 0000 … all negative numbers − 2 1111 1101 begin with 1 − 1 1111 1110 − 0 1111 1111 Programming Design – Selection and Repetition 17 / 61 Ling-Chieh Kung (NTU IM)

  18. Number systems Complements Digital circuits Miscellaneous things r ’s complement r n  X X  0 • The r ’ s complement of an n -digital number X : 0 X = 0 • Example. – The 10 ’ s complement of 012398 is 987602. – The 10 ’ s complement of 2467000 is 7533000. – The 2 ’ s complement of 1101100 is 0010100. – The 2 ’ s complement of 0110111 is 1001001. • To compute the complement of a number having radix point, first, remove the radix point, compute the complement of the new number, and restore the radix point. – The 1 ’ s complement of 01101.101 is 10010.010 – The 2 ’ s complement of 01101.101 is 10010.011 Programming Design – Selection and Repetition 18 / 61 Ling-Chieh Kung (NTU IM)

  19. Number systems Complements Digital circuits Miscellaneous things 8- bit 2’s complement numbers 0 0000 0000 1 0000 0001 all positive numbers 2 0000 0010 begin with 0 … 127 0111 1111 − 128 ? 1000 0000 − 127 1000 0001 … all negative numbers − 2 1111 1110 begin with 1 − 1 1111 1111 − 0 0000 0000 Programming Design – Selection and Repetition 19 / 61 Ling-Chieh Kung (NTU IM)

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend