15.561 Information Technology Essentials Thomas Malone Copyright © 2005 Thomas Malone, Chris Dellarocas, Stuart Madnick Acknowledgments: Slides marked “SM” are adapted from Stuart Madnick, MIT. Slides marked “CD” are adapted from Chris Dellarocas, U. Md. Why bother? • Why should you, as a manager, care about information technology? Buzzwords Buzzwords ???????????????????????????? Buzzwords Buzzwords Technological reality Main Course Objectives • Become comfortable with the technologies that are shaping business today • Acquire tools that will help you assess technological trends long after you have left Sloan CD Course overview • Technology • Applications of Technology A Typical Computer Keyboard Mouse Central Processing Unit (CPU) Memory Monitor Laser printer CD A Simplified Computer INPUT/OUTPUT PROCESSOR MEMORY MEMORY INPUT CONVEYOR 421 +030 +400 OUTPUT CONVEYOR 7 4 1 0 8 5 2 + 9 6 3 - LITTLE CALCULATOR MAN 134 00 212 01 007 02 006 03 311 04 602 05 … 97 98 99 BLACKBOARD SM INPUT/OUTPUT PROCESSOR MEMORY MEMORY 134 00 212 E OAD 01 R 421 STO L 007 02 006 03 7 8 9 311 04 4 5 6 602 05 1 2 3 … 0 + 97 98 99 CALCULATOR BLACKBOARD REGISTER IN +030 +400 OUT MEMORY • • • • • There are 100 “locations” on the blackboard Each location identified by number from 00 to 99 Each location has room for one 3-digit number Load moves number from blackboard to register. Store moves number from register to blackboard. Example: LOAD 01 Example: STORE 00 SM INPUT/OUTPUT PROCESSOR GET IN MEMORY REGISTER 421 +030 7 4 1 0 +400 OUT PUT 8 5 2 + 9 6 3 - CALCULATOR 134 00 212 01 007 02 006 03 311 04 602 05 … 97 98 99 BLACKBOARD INPUT/OUTPUT • Input and Output conveyors hold 3-digit numbers • GET moves number from INPUT to REGISTER • PUT moves number from REGISTER to OUTPUT SM INPUT/OUTPUT PROCESSOR MEMORY REGISTER IN 421 +030 +400 OUT 7 4 1 0 8 5 2 + 9 6 3 - CALCULATOR 134 00 212 01 007 02 006 03 311 04 602 05 … 97 98 99 BLACKBOARD PROCESSOR/CALCULATOR • Register has room for one 3-digit number • Calculator can add and subtract numbers from memory to register Examples: ADD 02 SUBTRACT 03 SM LMC INSTRUCTIONS PROCESSOR INPUT/OUTPUT GET IN MEMORY REGISTER 421 +030 7 4 1 0 +400 PUT Get 2. 3. 4. 5. 6. 7. Put Load x (Load 01) Store x (Store 05) Add x (Add 02) Sub x (Sub 03) Stop 9 6 3 - CALCULATOR OUT 1. 8 5 2 + D LOA ADD SUB STO RE 00 134 01 212 02 007 03 006 04 311 05 602 … 97 98 99 BLACKBOARD SM SYMBOLIC LMC ADDRESSES INPUT/OUTPUT PROCESSOR MEMORY MEMORY REGISTER IN Label Loc Contents 00 596 +030 7 4 1 0 +400 OUT 1. Load Wage 2. Add Bonus 3. Store Pay 4. Stop 9 6 3 - CALCULATOR EXAMPLE INSTRUCTION SEQUENCE Calculate Pay = Wage + Bonus 8 5 2 + Optional WAGE 96 400 BONUS 97 030 98 000 PAY 99 006 2-digit 3-digit number number (permanent) (optional) SM Program to: 1) 2) 3) Read WAGE and BONUS amount from INPUT Compute total PAY Output total PAY INPUT/OUTPUT Label Loc Contents 00 596 … +030 +400 BONUS WAGE 7 4 1 0 8 5 2 + 9 6 3 - WAGE 96 BONUS 97 98 PAY CALCULATOR OUT 4. MEMORY REGISTER IN STEP 1. 2. 3. PROCESSOR INSTRUCTION STEP 5. 6. 7. 8. 99 INSTRUCTION SM LMC STORED PROGRAM CONCEPTS INPUT/OUTPUT IN +030 Program Program 0. Get 0. Get 1. Store 1. Store 20 20 2. Add 19 2. Add 19 3. Put 3. Put 4. Stop 4. Stop REGISTER 7 4 1 0 +400 OUT MEMORY PROCESSOR 8 5 2 + 9 6 3 - CALCULATOR Label Loc Contents 00 01 02 03 04 … 97 98 99 ISSUES: • Where is LMC program stored? • How does LMC understand instructions like STOP? It only likes numbers. • How does LMC handle symbolic labels like A, B, C? ANSWERS (Stored Program Concept): • SM LMC MACHINE LANGUAGE AND ASSEMBLY LANGUAGE INPUT/OUTPUT PROCESSOR MEMORY 00 901 01 398 02 901 03 399 04 598 05 199 902 06 000 07 … 98 99 BLACKBOARD IN 421 +030 +400 8 9 4 5 6 1 2 3 0 + - CALCULATOR OUT INSTRUCTIONS opsymbolic code 000 stop 1xx add 2xx subtract 3xx store 5xx load 901 get 902 put 7 1 ASSEMBLY LANG (Source Program) STEP 00 01 02 03 04 05 06 07 INSTRUCTION get store w get store b load w add b put stop w b 2 MACHINE LANG (Object Program) LOC 00 01 02 03 04 05 06 07 INSTRUCTION 901 398 901 399 598 199 902 000 SM INSTRUCTION SEQUENCING INPUT/OUTPUT PROCESSOR NEXT INSTRUCTION COUNTER IN 421 +030 +400 7 8 9 4 5 6 1 2 3 0 + - CALCULATOR OUT START BUTTON INSTRUCTIONS opsymbolic code 000 stop 1xx add 2xx subtract 3xx store 5xx load 901 get 902 put MEMORY 00 901 01 398 02 901 03 399 04 598 05 199 902 06 000 07 … … 98 000 99 000 BLACKBOARD INSTRUCTION SEQUENCING 1. 2. 3. 4. LOOK AT COUNTER GET THAT INSTRUCTION PERFORM THAT INSTRUCTION PULL COUNTER CORD (REPEAT) SM INSTRUCTION SEQUENCING INPUT/OUTPUT PROCESSOR NEXT INSTRUCTION COUNTER IN 421 +030 +400 OUT 7 8 9 4 5 6 1 2 3 0 + - CALCULATOR START BUTTON MEMORY 901 00 398 01 901 02 399 03 598 04 199 05 902 06 000 07 … … 98 000 99 000 BLACKBOARD CONTROL FLOW • BRANCH always puts a new address in the instruction counter • BRANCH ZERO puts a new address in the instruction counter if the REGISTER is 0. Otherwise it increases the instruction counter by 1. Examples: BRANCH 02 BRANCH ZERO 06 SM INPUT/OUTPUT PROCESSOR NEXT INSTRUCTION COUNTER IN 421 +030 +400 7 8 9 4 5 6 1 2 3 0 + - CALCULATOR OUT START BUTTON INSTRUCTIONS opsymbolic code 000 stop 1xx add 2xx subtract 3xx store 5xx load 6xx branch 7xx branch zero opcode 901 902 symbolic get put MEMORY 00 901 01 398 02 901 03 399 04 598 05 199 902 06 000 07 … … 98 000 99 000 BLACKBOARD So what are: MIPS and MHz all about? SM BASIC FACTS TO ASK ABOUT ANY COMPUTER LMC ANSWERS 1. MEMORY (A) BASIC UNIT 3 DECIMAL DIGIT NUMBER (B) MAXIMUM SIZE 100 LOCATIONS 2. REGISTERS (A) HOW MANY 1 (B) NUMBERS 3 DECIMAL DIGIT NUMBER 3. INSTRUCTIONS (A) NUMBER 7 INSTRUCTIONS SM INTEL PENTIUM 4 ANSWERS 1. MEMORY (A) INDUSTRY BASIC UNIT 8 BINARY DIGITS (BITS) = 1 BYTE 8 BITS 0 0 1 0 1 1 0 1 (B) BASIC UNIT 32 BITS = 4 BYTES (C) TYPICAL SIZE MEMORY RAM: 128 MB – 1GB 2. REGISTERS (A) HOW MANY (B) NUMBERS ABOUT 50 REGISTERS VARIOUS TYPES 3. INSTRUCTIONS (A) NUMBER ABOUT 500 SM Conclusions 1. There are many detailed facts about computers. 2. Many of them will change every year of your career. 3. You will never know them all. 4. That’s okay. 5. What you need to know is: – What kinds of questions to ask – How to make sense of the answers. 6. The basic concepts you have learned today will be useful for a long time.