Introduction to Software
Software What is software?
Software What is software? Anyone remember our definition of a computer from yesterday?
Software What is software? Anyone remember our definition of a computer from yesterday? A programmable machine that inputs, outputs, and manipulates data/information according to a list of instructions.
Software What is software? Anyone remember our definition of a computer from yesterday? A programmable machine that inputs, outputs, and manipulates data/information according to a list of instructions.
Software What is software? Anyone remember our definition of a computer from yesterday? A programmable machine that inputs, outputs, and manipulates data/information according to a list of instructions. Software is the list of instructions that tells a computer what to do.
Software Examples of software:
Software Examples of software: MS Word
Software Examples of software: MS Word The games you play
Software Examples of software: MS Word The games you play Facebook, Twitter, Skype
Software Examples of software: MS Word The games you play Facebook, Twitter, Skype Web browsers: Internet Explorer, Firefox, etc.
Software Examples of software: MS Word The games you play Facebook, Twitter, Skype Web browsers: Internet Explorer, Firefox, etc. …
Software What does software look like?
Actual Code From Counter-Strike // Out of ammo? if ( m_iClip1 <= 0 ) { if (m_bFireOnEmpty) PlayEmptySound(); m_flNextPrimaryAttack = gpGlobals->curtime + 0.2; } return false; SendWeaponAnim( ACT_VM_PRIMARYATTACK ); m_iClip1--; // player "shoot" animation pPlayer->SetAnimation( PLAYER_ATTACK1 );
Software It’s all Greek to me!
Software It’s all Greek to me! How does the computer understand this stuff?
Software It’s all Greek to me! How does the computer understand this stuff? You have to translate it for the computer.
Software It’s all Greek to me! How does the computer understand this stuff? You have to translate it for the computer. So…what language does the computer understand?
Software Remember that analog/digital stuff from yesterday?
Software Remember that analog/digital stuff from yesterday? The computer understands a digital language.
Software Remember that analog/digital stuff from yesterday? The computer understands a digital language. It is a language of 1’s and 0’s…
Software Remember that analog/digital stuff from yesterday? The computer understands a digital language. It is a language of 1’s and 0’s… The 1’s are a “high” voltage (+5VDC) in circuit boards.
Software Remember that analog/digital stuff from yesterday? The computer understands a digital language. It is a language of 1’s and 0’s… The 1’s are a “high” voltage (+5VDC) in circuit boards. The 0’s are a “low” voltage (0VDC) in circuit boards.
A Digression…
A Digression – Number Systems What number system do we count in?
A Digression – Number Systems What number system do we count in? Decimal (base 10)
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10.
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 73 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 7 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 7 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 7 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 7 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 9000 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 0 + 173 = 9173
A Digression – Number Systems What number system do we count in? Decimal (base 10): digits 0-9, place value in powers of 10. For example: 9 1 7 3 = 9 x 103 + 1 x 102 + 7 x 101 + 3 x 100 = 9 x 1000 + 1 x 100 + 7 x 10 + 3 x 1 = 9000 + 100 + 70 + 3 = 9173 = 0 + 173 = 9173
Number Systems What other number systems are there?
Number Systems What other number systems are there? Binary (base 2)
Number Systems What other number systems are there? Binary (base 2) Hexadecimal (base 16) – also called hex
Number Systems Binary (base 2)
Number Systems Binary (base 2): digits 0 & 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0101
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 1 x 22 + 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 1 x 22 + 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1 = 4 + 1
Number Systems Binary (base 2): digits 0 & 1, digit place value is a power of 2 0 1 0 1 = 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 = 0 x 8 + 1 x 4 + 0 x 2 + 1 x 1 = 4 + 1 = 5
Number Systems Hexadecimal (base 16)
Number Systems Hexadecimal (base 16): digits 0-F
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15)
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) 0xA31C
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = 3 x 162 + 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = 3 x 162 + 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1 = 40,960 + 769 + 16 + 12
Number Systems Hexadecimal (base 16): digits 0-F, digit place value is a power of 16 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F (A=10, B=11…F=15) A 3 1 C = A x 163 + 3 x 162 + 1 x 161 + C x 160 = 10 x 163 + 3 x 162 + 1 x 161 + 12 x 160 = 10 x 4096 + 3 x 256 + 1 x 16 + 12 x 1 = 40,960 + 769 + 16 + 12 = 41, 756 (base 10)
Number Systems So, who cares about this binary or hex stuff??? RGB: 24 bit color (True Color)
Number Systems So, who cares about this binary or hex stuff??? RGB: 24 bit color (True Color) http://www.w3schools.com/html/html_colors.asp
Number Systems So, who cares about this binary or hex stuff??? RGB: 24 bit color (True Color) http://www.w3schools.com/html/html_colors.asp http://www.easyrgb.com/calculator.php
Number Systems So, who cares about this binary or hex stuff??? RGB: 24 bit color (True Color) http://www.w3schools.com/html/html_colors.asp http://www.easyrgb.com/calculator.php Web authoring commonly expresses color as 24 bit RGB using hex
Software We write software in a programming language.
Software We write software in a programming language. Translating this programming language into machine language is called compiling.
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code)
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, …
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, … Another way is called interpreting.
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, … Another way is called interpreting. Edit
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, … Another way is called interpreting. Edit, run (translate each line of code as you get to it)
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, … Another way is called interpreting. Edit, run (translate each line of code as you get to it), run (translate each line of code as you get to it)
Software We write software in a programming language. Translating this programming language into machine language is called compiling. Edit, compile (full translation, every last bit of code), run, run, run, … Another way is called interpreting. Edit, run (translate each line of code as you get to it), run (translate each line of code as you get to it), run (translate each line of code as you get to it), ...
Programming Languages
Programming Languages Compiled
Programming Languages Compiled Higher performance
Programming Languages Compiled Higher performance Very comprehensive
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language Basic
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language Basic Fortran, and Pascal
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language Basic Fortran, and Pascal C, and C++
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language Basic Fortran, and Pascal C, and C++ Java
Programming Languages Compiled Higher performance Very comprehensive “Hardcore” coding Assembly Language Basic Fortran, and Pascal C, and C++ Java C#
Scripting Languages
Scripting Languages Interpreted
Scripting Languages Interpreted Lower performance
Scripting Languages Interpreted Lower performance Very high level language
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping Perl
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping Perl Python
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping Perl Python SQL
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping Perl Python SQL JavaScript
Scripting Languages Interpreted Lower performance Very high level language Rapid prototyping Perl Python SQL JavaScript VBScript
Web/Markup Languages
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen.
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen. Html – Hypertext Markup Lang
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen. Html – Hypertext Markup Lang Xml – eXtensible Markup Lang
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen. Html – Hypertext Markup Lang Xml – eXtensible Markup Lang CSS – Cascading Style Sheets
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen. Html – Hypertext Markup Lang Xml – eXtensible Markup Lang CSS – Cascading Style Sheets ASP – Active Server Pages
Web/Markup Languages Primarily concerned with formatting text, pictures, etc. on the screen. Html – Hypertext Markup Lang Xml – eXtensible Markup Lang CSS – Cascading Style Sheets ASP – Active Server Pages PHP – Hypertext Preprocessor
Designing Software Have you ever looked at something and wondered how it works?
Designing Software Have you ever looked at something and wondered how it works? You are trying to figure out its “algorithm.”
Designing Software Have you ever looked at something and wondered how it works? You are trying to figure out its “algorithm.” To write software, you need to come up with its algorithm.
Assignment
Assignment Find something at home about which you’ve wondered how it works…
Assignment Find something at home about which you’ve wondered how it works… Spend 15 minutes thinking about it, trying to figure its algorithm out.
Assignment Find something at home about which you’ve wondered how it works… Spend 15 minutes thinking about it, trying to figure its algorithm out. Next, go to www.howstuffworks.com and look your item up…
Assignment Find something at home about which you’ve wondered how it works… Spend 15 minutes thinking about it, trying to figure its algorithm out. Next, go to www.howstuffworks.com and look your item up… See how close you were!
Assignment Find something at home about which you’ve wondered how it works… Spend 15 minutes thinking about it, trying to figure its algorithm out. Next, go to www.howstuffworks.com and look your item up… See how close you were! Be prepared to share what you found tomorrow in class!
Clear and Unclear Windows