COP 3502 Introduction to Computer Science Program Translation

  • Slides: 20
Download presentation
COP 3502: Introduction to Computer Science Program Translation Yashas Shankar

COP 3502: Introduction to Computer Science Program Translation Yashas Shankar

Second part of this course We will spend 4 classes on Program Translation (chapter

Second part of this course We will spend 4 classes on Program Translation (chapter 6 from your AE textbook) and 3 classes on Hardware (chapter 7 from your AE textbook) You need to have the textbook You won’t have to do programming on program. cs. fsu. edu (but you still have to write some assembly programs on papers) We will spend 4 classes on Ethics Textbook is optional, but you may need it to do extra credits We will also spend some times reviewing programming during this period

Extra credit There will be 4 extra credits 2 for homework 2 for quizzes

Extra credit There will be 4 extra credits 2 for homework 2 for quizzes For each extra credit, write a 5 -page summary of one chapter from your “ethics” textbook

Alternative extra credit for homework Do the homework that you want to have your

Alternative extra credit for homework Do the homework that you want to have your score increase Put your homework on your webpage Write a 2 -page summary of one chapter in Ethics textbook and put it on your webpage 15 points will come from your homework and 10 points from the summary. Grading policy on homework part will be tougher. Your homework has to be 100% correct or you will get at least 5 points off.

Alternative extra credit for quiz Design a 10 -question quiz related to the subject,

Alternative extra credit for quiz Design a 10 -question quiz related to the subject, in the quiz that you want to increase your score. Put a “correct” answer for each question. Put your quiz & solution on your webpage Your base score will be 8 points. If your quiz is good, you will get 9 or 10. If it is bad you will get 0 -7 points

Extra credit submission You have to state what each extra credit is for, e.

Extra credit submission You have to state what each extra credit is for, e. g. for quiz#4, asg#12, etc. Normal 5 -page summary extra credits Alternative extra credits Print out and hand them to me Put on your webpage (and notify me) You can start submitting your extra credit when we start “ethics for computer science” part You have to submit your extra credit before the final exam

Program translation Today lecture Binary representation & machine language

Program translation Today lecture Binary representation & machine language

Binary representation & machine language Human language “hello my name is yashas” Machine language

Binary representation & machine language Human language “hello my name is yashas” Machine language “ 0001 1000 1111 1100 ……………… 0101” Machine language has only 0 and 1

How machine language work? Human: add one and two Machine: Code for ADD 1

How machine language work? Human: add one and two Machine: Code for ADD 1 2 129 1 2 1000 0001 0000 0010

Binary representation Machine only understands 0 and 1 We need to convert numbers that

Binary representation Machine only understands 0 and 1 We need to convert numbers that we understand to what machines understand (and vise versa) 0 0000 8 1000 1 0001 9 1001 2 0010 10 1010 3 0011 11 1011 4 0100 12 1100 5 0101 13 1101 6 0110 14 1110 7 0111 15 1111

How to adds two numbers in binary representation? 0 0000 1 0001 2 0010

How to adds two numbers in binary representation? 0 0000 1 0001 2 0010 3 0011 4 0100 5 0101 6 0110 7 0111 0001 + 0010 + 0100 0010 + 0010 0011 0010 + 0101 0011 + 0110 0101 0011 + 1000 What can you notice here? 8 1000 9 1001 10 1010 11 1011 12 1100 13 1101 14 1110 15 1111 16 10000

Binary representation – power of two bits 0 0000 1 0001 2 0010 4

Binary representation – power of two bits 0 0000 1 0001 2 0010 4 0100 8 1000 16 10000 32 100000 64 128 0 0000 1 0000 0001 2 0000 0010 4 0000 0100 1000000 8 1000000 0 0000 16 0001 0000 32 0010 0000 64 0100 0000 128 1000

Binary representation – power of two bits 0 0000 1 0000 0001 2 0000

Binary representation – power of two bits 0 0000 1 0000 0001 2 0000 0010 4 0000 0100 8 0000 16 0001 0000 32 0010 + 0100 + 1000 11000010 0000 = 1000 0000 + 0100 000 = 128 + 64 = 192 0000 64 0100 0000 128 1000 01000 + 10000

How to convert binary number to decimal number? 10110011 = 128 + 32 +

How to convert binary number to decimal number? 10110011 = 128 + 32 + 16 + 2 + 1 =179 1 0 1 1 0 0 1 1 128 64 32 16 8 4 2 1 32 16 2 1 128 = 179

How to convert decimal number to binary number? 198 = 128 + 70 =

How to convert decimal number to binary number? 198 = 128 + 70 = 128 + 64 + 6 = 128 + 64 + 2 = 11000110 128 64 32 16 8 4 2 1 1 1 0 0 0 1 1 0

Hexadecimal representation Decimal Binary Hex 0 0000 0 1 0001 1 2 0010 2

Hexadecimal representation Decimal Binary Hex 0 0000 0 1 0001 1 2 0010 2 3 0011 3 4 0100 4 5 0101 5 6 0110 6 7 0111 7 Decima l Binary Hex 8 1000 8 9 1001 9 10 1010 A 11 1011 B 12 1100 C 13 1101 D 14 1110 E 15 1111 F

How to convert binary to hexadecimal (and vise versa)? 0001 0010 1111 1100 =

How to convert binary to hexadecimal (and vise versa)? 0001 0010 1111 1100 = 12 FC 101111 = 0010 1111 = 2 F 10 0011 1100 = 0010 0011 1100 = 23 C 1001 11 = 0010 0111 = 277 2 F = 0010 1111 6 CA 3 = 0110 1100 1010 0011

Hexadecimal representation Computer doesn’t understand it Save people a lot of writing Easier for

Hexadecimal representation Computer doesn’t understand it Save people a lot of writing Easier for people to understand 0, 1, 2, …………, 9, A, B, C, D, E, F

Coverting Hex to Decimal and vise versta Hex to Dec: Hex Binary Decimal Dec

Coverting Hex to Decimal and vise versta Hex to Dec: Hex Binary Decimal Dec to Hex: Dec Binary Hex

What you need to know (well) How to convert binary to decimal How to

What you need to know (well) How to convert binary to decimal How to convert decimal to binary How to convert binary to hexadecimal How to convert hexadecimal to binary How to add numbers in binary form