Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Introduction To Programming 2, Lecture Slide - Computer Science, Slides of C programming

Programming Language, Assembly Code Fragment, Translation, Execution, Java Code, Compilation, Example, Identifiers, Structures, White Space, Comments, Namespaces, Program Structure, Method, Classes, Statements

Typology: Slides

2010/2011
On special offer
30 Points
Discount

Limited-time offer


Uploaded on 10/05/2011

christina
christina 🇺🇸

4.6

(23)

148 documents

1 / 5

Related documents


Partial preview of the text

Download Introduction To Programming 2, Lecture Slide - Computer Science and more Slides C programming in PDF only on Docsity! 1 CS 112 Introduction to Programming Lecture #2: C# Program Structure and Our First C# Programs http://flint.cs.yale.edu/cs112 2 Outline Ø Admin. qProgramming language levels rStructure of a C# program rCompiling and running our first C# programs 3 Admin.: Workload In Last Year Assignment 4: Check 0 5 10 15 20 25 30 35 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 Assignment 5: Classes 0 5 10 15 20 25 30 35 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Assignment 3: game, 2nd largest, triangle 0 5 10 15 20 25 30 35 40 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 Assignment 6: Hangman 0 5 10 15 20 25 30 35 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Assignment 7: GUI 0.00 5.00 10.00 15.00 20.00 25.00 30.00 35.00 40.00 1 2 3 4 Assignment: 8Queens 0 5 10 15 20 25 30 35 40 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 The assignment this year will be different. 4 Outline qAdmin. Ø Programming language levels rStructure of a C# program rCompiling and running our first C# programs 5 Programming Language Levels rEach type of CPU has its own specific machine language rOther levels were created to satisfy different objectives, e.g., make it easier for a human being to write programs mmachine language m assembly language m intermediate language m high-level language 6 Example Machine Code Fragment 177312 137272 001400 026400 017400 000012 000007 004420 010400 011000 000010 005023 012000 012400 000010 003426 013400 000007 000430 003000 064474 064556 037164 000001 024003 053051 000001 041404 062157 000545 007400 064514 062556 072516 061155 071145 060524 066142 000545 002000 060555 067151 000001 024026 046133 060552 060566 066057 067141 027547 072123 064562 063556 024473 000526 005000 067523 071165 062543 064506 062554 000001 046014 067151 067543 067154 065056 073141 006141 004000 004400 000007 006031 015000 015400 000001 040433 070440 067565 062564 060552 060566 064457 027557 071120 067151 051564 071164 060545 000555 003400 071160 067151 066164 000556 012400 046050 060552 060566 066057 067141 027547 072123 064562 063556 024473 000126 000041 000006 000007 000000 000000 000002 000001 000010 000011 000001 000012 000000 000035 000001 000001 000000 025005 000267 130401 000000 000400 005400 000000 003000 000400 000000 003400 004400 006000 006400 000400 005000 000000 030400 001000 000400 000000 010400 000262 011002 133003 002000 000262 011002 133005 002000 000261 000000 000001 000013 000000 000016 000003 000000 000016 000010 000020 000020 000021 000001 000016 000000 000002 000017 A number specifies what action the computer should take. 2 7 Example Assembly Code Fragment movl (%edx,%eax), %ecx movl 12(%ebp), %eax leal 0(,%eax,4), %edx movl $nodes, %eax movl (%edx,%eax), %eax fldl (%ecx) fsubl (%eax) movl 8(%ebp), %eax leal 0(,%eax,4), %edx movl $nodes, %eax movl (%edx,%eax), %ecx movl 12(%ebp), %eax leal 0(,%eax,4), %edx movl $nodes, %eax Symbols to help programmers to remember the words. 8 Example C++/C#/Java Code Fragment bool DetermineNeighbor(int i, int j) { double distanceX = (nodes[i].x - nodes[j].x); double distanceY = (nodes[i].y - nodes[j].y); double distanceSquare = disx * disx + disy * disy; double distance = sqrt(distanceSquare); if (distance < radius) return true; else return false; } You do not need to understand the exact meaning of this program, just the feeling. 9 Programming Languages rA program written in a high-level language must be translated into machine language before it can be executed on a particular type of CPU rA compiler is a software tool which translates source code into a specific target language 10 C# Translation and Execution r The C# compiler translates C# source code (.cs files) into a special representation called Microsoft Intermediate Language (MSIL) rMSIL is not the machine language for any traditional CPU, but a virtual machine r The Common Language Runtime (CLR) then interprets the MSIL file m It uses a just-in-time compiler to translate from MSIL format to machine code on the fly 11 C# Compilation and Execution C# source code MSIL C# compiler Machine code Just in time compiler 12 Outline qAdmin. qProgramming languages Ø Structure of a C# program rCompiling and running our first C# programs
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved