DOC PREVIEW
Pitt CS 0447 - LECTURE NOTES

This preview shows page 1-2-22-23 out of 23 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 23 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 23 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 23 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 23 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 23 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

CS/COE0447 Computer Organization & Assembly Language“C Program” Down to “Numbers”“Numbers” in MemoryStored Program ConceptSlide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Addresses and Contents shown in HexNumber SystemsBase 10 (Decimal)Numbers and Bases in GeneralExample: Base 2 (Binary)Base ConversionBase Conversion, cont’dSlide 19Before moving on to chapter 2….Program PerformanceClock, Clock Cycle TimeSlide 231CS/COE0447Computer Organization & Assembly LanguagePre-Chapter 22“C Program” Down to “Numbers”swap:muli $2, $5, 4add $2, $4, $2lw $15, 0($2)lw $16, 4($2)sw $16, 0($2)sw $15, 4($2)jr $31void swap(int v[], int k){int temp;temp = v[k];v[k] = v[k+1];v[k+1] = temp;}00000000101000010…00000000000110000…10001100011000100…10001100111100100…10101100111100100…10101100011000100…00000011111000000…compilerassembler3“Numbers” in Memory00000000101000010…00000000000110000…10001100011000100…10001100111100100…10101100111100100…10101100011000100…00000011111000000…4Stored Program Conceptprocessormain memoryhard diskprogram Aprogram Bprogram Cprogram Aprogram Bdata Adata Bprogram fetchdata load/storedisk I/Oprogramcounter5Stored Program Concept•Programs (instructions) are stored in memory as a stream of bits (numbers)–Indistinguishable from data–More than one program can reside in memory at the same time–Programs can be modified by the processor or I/O just as data can be modified•Instructions are fetched by the processor and decoded; they determine processor actions•Program Counter determines which instruction is fetched next6Stored Program Concept•In fact, one of the great ideas in computer science is the idea that programs could be stored just as data is stored. •Before that, people envisioned the hardware running a fixed program, and data being stored in memory.78…9101112Addresses and Contents shown in Hex13Number Systems•Actual machine code is in binary –O, 1 are high and low signals to hardware•Hex (base 16) is often used by humans (code, simulator, manuals, …) because:•16 is a power of 2 (while 10 is not); mapping between hex and binary is easy•It’s more compact than binary•We can write, e.g., 0x90000008 in programs rather than 1001000000000000000000000000100014Base 10 (Decimal)•Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 (10 of them)•Example:–3217 = (3103) + (2102) + (1101) + (7100)–A shorthand form we’ll also use:103 102 101 100 3 2 1 715Numbers and Bases in General•Number Base B  B unique values per digit–Base 10: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}–Base 2: {0, 1}–Base 16: {0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F}•(Unsigned) number representation–d31d30…d1d0 is a 32-digit non-negative number–Value = d31B31 + d30B30 + … + d1B1 + d0B0•N-digit base B  BN unique values in N digits of base B16Example: Base 2 (Binary)•Digits: 0, 1 (2 of them)•“Binary digit” = “Bit”•Example:–11010two = (124) + (123) + (022) + (121) + (020) = 16 + 8 + 0 + 2 + 0 = 26ten•Choice for machine implementation!–1 = on, 0 = off17Base Conversion•Let’s do decimal-to-binary conversion:•Aten = dn-1dn-2…d1d0two•Given a base-10 number A, come up with n-digit binary number that has the same value!–X = the number–Let N be the largest power of 2 that fits into X–Put a 1 in that position–X = X – 2^N–Repeat until you are done!18Base Conversion, cont’d•From binary to decimal•From decimal to binary•From binary to hexadecimal•From hexadecimal to binary•From decimal to hexadecimal? (more complicated; later)19Base Conversion, cont’d•Binary to hex (base 16), or hex to binary base conversion:–Take 4 bits in binary and convert them into one hex digit and vice versa–For binary  hex: 4-bit groups, starting from the right–For hex  binary: translate each hex digit into 4 bits, starting from the right•Since binary notation tends to be long, hex notation is frequently used in assembly language (and in C programs).•More on binary number representation will be discussed when we study arithmetic20Before moving on to chapter 2….•We’ll mention some concepts in program performance, so you have ideas in mind•We’ll return to this material later in the course.21Program Performance•Program performance is measured in terms of time!•Program execution time depends on:•Number of instructions executed to complete a job•How many clock cycles are needed to execute a single instruction•The length of the clock cycle (clock cycle time)22Clock, Clock Cycle Time•Circuits in computers are “clocked”•At each clock rising (or falling) edge, some specified actions are done, usually within the next rising (or falling) edge•Instructions typically require more than one cycle to executeFunction block(made of circuits)clockclock cycle time23Program Performance•time = (# of clock cycles)  (clock cycle time)•# of clock cycles = (# of instructions executed)  (average cycles per instruction) •We’ll do specific calculations later•But now, let’s move on to Chapter


View Full Document

Pitt CS 0447 - LECTURE NOTES

Download LECTURE NOTES
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view LECTURE NOTES and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view LECTURE NOTES 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?