SlideShare a Scribd company logo
Introduction to Programming
授課老師: Chao-Lung Yang (楊朝龍)
Why do we need to learn
programming?
 When did you have your first computer?
 Did you learn programming or coding before?
 How is this world running under computing?
 Let’s look at how other people thinking?
 What most school don't teach
Introduction
 Basis of Programming Language
 Introduction of C#
Computer Program
 What is a computer program?
 Series of instructions that directs computer to perform
tasks
 Simply, a program is like a converter, which reads an
input and outputs useful information
Windows Applications
 Windows Applications
 A Graphical User Interface (GUI)
 Allows you to interact with the software using text, graphics,
and visual images such as icons
 Controls how you enter data and instructions and how the
screen displays information
 Console Applications
 For DOS or UNIX/Linux
 Designed to be used by a text-only computer interface
(Command-line Interface)
 Interacts with a console application using only a keyboard
Types of Programming Languages
 Programming language: a notion for writing programs and
is used to communicate instructions.
 Programming languages can be divided into low-level
languages and high-level languages
 Low level languages
 Machine-dependent runs only on one type of computer
 Close to the language which computers can read
 Ex: Machine and Assembly Languages
 High level languages
 Often machine-independent can run on many different types of
computers and operating systems
 Close to the language which we can read
Low-Level Languages
Machine Language
 Only language computer directly recognizes
 Most efficient
 Uses a series of binary digits (1s and 0s) with a
combination of numbers and letters that represent
binary digits
0111 0001 0000 1111
1001 1101 1011 0001
Low-Level Languages (con’t)
Assembly Language
 Instructions made up of symbolic instruction codes,
meaningful abbreviations and codes
 Source program contains code to be converted to
machine language
MOV AX 01
MOV BX 02
ADD AX BX
High-Level Languages
 High Level Languages are more close to our
human’s languages.
 They are also referred as Half-English
programming languages.
 The programs have to be converted or complied to
the machine languages.
 Less efficient but more programmer friendly
 Examples: Basic、C/C++、C#、Java、FORTRAN、
COBOL, Pascal and so on.
High-Level Languages (con’t)
There are two basic approaches to implementing a
program in a higher-level language:
Compilers
 A source program is converted into machine language
before being executed.
 A source program will be inspected the syntax before
being complied.
High-Level Languages (con’t)
Interpreters
 Translates and executes one program code statement
at a time
 Less efficient
 Easy to find errors and flexible
 Examples: Web programming languages -Scripts
(VBScript and JavaScript)
Execution of Programs
 When CPU executes a machine language program, it
read the instructions stored in memory (RAMs) and
execute (Fetch-and-execute).
 CPU fetches the instructions sequentially.
 CPU can NOT understand what a program wants to do.
It just computes very fast.
Central Processing Unit
The CPU consists of a variety of parts including:
 Control unit: directs the other parts of the
computer system to execute stored program
instructions.
 Arithmetic and Logic Unit (ALU): performs
mathematical operations as well as logical
operations.
 Registers: are temporary storage areas for data or
instructions. For example: to add two numbers
which are stored at registers.
Random-Access Memory
 Before the CPU can execute a program, program
instructions and data must be placed into memory
from an input device or storage device.
 Memory is the part of the computer that stores
data and program instructions for processing.
 Once the necessary data and instructions are in
memory, the CPU performs “Fetch and Execute”.
 Each location in memory is identified by an
address.
 The control unit can find data and instructions
based on these addresses.
Example: Execution of Programs
 k← i + j
 retrieve i
 retrieve j
 perform i+j
 store the result to k
Introduction of C#
 .NET Framework
 C#
 Vision Studio 2010
.NET Framework
 .NET Framework is the latest programming develop
platform offered by Microsoft.
 The current version is 4.0.
 The class library and the Common Language Runtime
(CLR) together constitute the .NET Framework.
 Users can use Visual Basic, C++, and C# to write
programs based on .NET Framework.
 Programs developed on .NET Framework are not
complied to machine language, but intermediate byte-
code called “MSIL” (Microsoft Intermediate Language)。
.NET Framework (con’t)
 When execution of the byte-code, MSIL is JIT(Just
In Time) complied to machine language by CLR.
2010
7
C#
 C# (C Sharp) is developed by the team leaded by
Anders Hejlsberg
 C# is introduced on 2000 and released on 2002
 Object-oriented programming language based on C++
 Accepted as a standard for Web applications and XML-
based Web services
 Uses a JIT compiler
 Resulting code is called Microsoft Intermediate
Language (MSIL)
Visual Studio
 Development Environment
 A set of tools which provides programmers to build, edit,
compile, and maintain programs
 Currently, most of high-level languages have their own
development environment, which is referred to as IDE
(Integrated Development Environment).
 IDE is a software application which enables
programmers to edit source codes, compile, debug,
and manage programs throughout software
development.
Visual Studio (con’t)
 What is Visual Studio?
 .NET is set of technologies that allows program to run
on Internet
 Comprised of Visual Basic, Visual C++, Visual C#, and
Visual J#
 Visual Studio 2005/2008/2010 is an Integrated
Development Environment (IDE) from Microsoft
 Visual Studio 2005/2008/2010 is an IDE which
supports .NET Framework. It can be used to develop
various types of applications for Windows, ASP.NET,
console, and Web Services.
Visual Studio (con’t)
 Applications developed in IDE of Visual Studio are
executed on the CLR platform of .NET Framework:
/2010
4.
Visual Studio (con’t)
 The functions of Visual Studio
 IDE for multiple programming languages
 Powerful functions of project management
 Project templates are offered
 Visual program-developing GUI
 IntelliSense-autocompletion
 Complete functions of debugger
Ad

More Related Content

Similar to Introduction to Computer Programming (general background) (20)

Introduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem AnsariIntroduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem Ansari
Tech
 
Fundamental of Information Technology - UNIT 7
Fundamental of Information Technology - UNIT 7Fundamental of Information Technology - UNIT 7
Fundamental of Information Technology - UNIT 7
Shipra Swati
 
CS3251-_PIC
CS3251-_PICCS3251-_PIC
CS3251-_PIC
AALIM MUHAMMED SALEGH COLLEGE OF ENGINEERING
 
Intro1
Intro1Intro1
Intro1
phanleson
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
AmanGunner
 
df
dfdf
df
guest0307c6
 
Programming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdfProgramming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdf
BernardVelasco1
 
Introduction to C# Programming
Introduction to C# ProgrammingIntroduction to C# Programming
Introduction to C# Programming
Sherwin Banaag Sapin
 
all languages in computer programming
all languages in computer programmingall languages in computer programming
all languages in computer programming
hamza239523
 
Programming language using Python Presentation
Programming language using Python PresentationProgramming language using Python Presentation
Programming language using Python Presentation
DeepakYadav962563
 
Unit i (part2) b.sc
Unit i (part2)   b.scUnit i (part2)   b.sc
Unit i (part2) b.sc
Hepsijeba
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptx
PmarkNorcio
 
Introduction of C Programming
Introduction of C ProgrammingIntroduction of C Programming
Introduction of C Programming
Dr. Ranjan Kumar Mishra
 
Computer Programming - Lecture 1
Computer Programming - Lecture 1Computer Programming - Lecture 1
Computer Programming - Lecture 1
Dr. Md. Shohel Sayeed
 
Define Computer language, Translator, Standard input out C
Define Computer language, Translator, Standard input out CDefine Computer language, Translator, Standard input out C
Define Computer language, Translator, Standard input out C
Dr Shailendra Bhalawe
 
Introduction to programming principles languages
Introduction to programming principles languagesIntroduction to programming principles languages
Introduction to programming principles languages
Frankie Jones
 
Concept of computer programming iv
Concept of computer programming ivConcept of computer programming iv
Concept of computer programming iv
Eyelean xilef
 
Basic Computer Science Introduction.pptx
Basic Computer Science Introduction.pptxBasic Computer Science Introduction.pptx
Basic Computer Science Introduction.pptx
srinivasanvenkat10
 
Btech i pic u-1 introduction to c language
Btech i pic u-1 introduction to c languageBtech i pic u-1 introduction to c language
Btech i pic u-1 introduction to c language
Rai University
 
Bsc cs i pic u-1 introduction to c language
Bsc cs i pic u-1 introduction to c languageBsc cs i pic u-1 introduction to c language
Bsc cs i pic u-1 introduction to c language
Rai University
 
Introduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem AnsariIntroduction to Programming Concepts By Aamir Saleem Ansari
Introduction to Programming Concepts By Aamir Saleem Ansari
Tech
 
Fundamental of Information Technology - UNIT 7
Fundamental of Information Technology - UNIT 7Fundamental of Information Technology - UNIT 7
Fundamental of Information Technology - UNIT 7
Shipra Swati
 
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.docICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
ICT-DBA4 -05-0811-Apply-Object-Oriented-Programming-Language-Skills.doc
AmanGunner
 
Programming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdfProgramming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdf
BernardVelasco1
 
all languages in computer programming
all languages in computer programmingall languages in computer programming
all languages in computer programming
hamza239523
 
Programming language using Python Presentation
Programming language using Python PresentationProgramming language using Python Presentation
Programming language using Python Presentation
DeepakYadav962563
 
Unit i (part2) b.sc
Unit i (part2)   b.scUnit i (part2)   b.sc
Unit i (part2) b.sc
Hepsijeba
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptx
PmarkNorcio
 
Define Computer language, Translator, Standard input out C
Define Computer language, Translator, Standard input out CDefine Computer language, Translator, Standard input out C
Define Computer language, Translator, Standard input out C
Dr Shailendra Bhalawe
 
Introduction to programming principles languages
Introduction to programming principles languagesIntroduction to programming principles languages
Introduction to programming principles languages
Frankie Jones
 
Concept of computer programming iv
Concept of computer programming ivConcept of computer programming iv
Concept of computer programming iv
Eyelean xilef
 
Basic Computer Science Introduction.pptx
Basic Computer Science Introduction.pptxBasic Computer Science Introduction.pptx
Basic Computer Science Introduction.pptx
srinivasanvenkat10
 
Btech i pic u-1 introduction to c language
Btech i pic u-1 introduction to c languageBtech i pic u-1 introduction to c language
Btech i pic u-1 introduction to c language
Rai University
 
Bsc cs i pic u-1 introduction to c language
Bsc cs i pic u-1 introduction to c languageBsc cs i pic u-1 introduction to c language
Bsc cs i pic u-1 introduction to c language
Rai University
 

Recently uploaded (20)

Top 12 Most Useful AngularJS Development Tools to Use in 2025
Top 12 Most Useful AngularJS Development Tools to Use in 2025Top 12 Most Useful AngularJS Development Tools to Use in 2025
Top 12 Most Useful AngularJS Development Tools to Use in 2025
GrapesTech Solutions
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
sequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineeringsequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineering
aashrithakondapalli8
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Adobe InDesign Crack FREE Download 2025 link
Adobe InDesign Crack FREE Download 2025 linkAdobe InDesign Crack FREE Download 2025 link
Adobe InDesign Crack FREE Download 2025 link
mahmadzubair09
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
What Do Candidates Really Think About AI-Powered Recruitment Tools?
What Do Candidates Really Think About AI-Powered Recruitment Tools?What Do Candidates Really Think About AI-Powered Recruitment Tools?
What Do Candidates Really Think About AI-Powered Recruitment Tools?
HireME
 
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
Ranking Google
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Sequence Diagrams With Pictures (1).pptx
Sequence Diagrams With Pictures (1).pptxSequence Diagrams With Pictures (1).pptx
Sequence Diagrams With Pictures (1).pptx
aashrithakondapalli8
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
GDS SYSTEM | GLOBAL DISTRIBUTION SYSTEM
GDS SYSTEM | GLOBAL  DISTRIBUTION SYSTEMGDS SYSTEM | GLOBAL  DISTRIBUTION SYSTEM
GDS SYSTEM | GLOBAL DISTRIBUTION SYSTEM
philipnathen82
 
Tools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google CertificateTools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google Certificate
VICTOR MAESTRE RAMIREZ
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdfTop Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
evrigsolution
 
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint PresentationFrom Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
Shay Ginsbourg
 
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with PrometheusMeet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Eric D. Schabell
 
Digital Twins Software Service in Belfast
Digital Twins Software Service in BelfastDigital Twins Software Service in Belfast
Digital Twins Software Service in Belfast
julia smits
 
Top 12 Most Useful AngularJS Development Tools to Use in 2025
Top 12 Most Useful AngularJS Development Tools to Use in 2025Top 12 Most Useful AngularJS Development Tools to Use in 2025
Top 12 Most Useful AngularJS Development Tools to Use in 2025
GrapesTech Solutions
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
sequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineeringsequencediagrams.pptx software Engineering
sequencediagrams.pptx software Engineering
aashrithakondapalli8
 
Download MathType Crack Version 2025???
Download MathType Crack  Version 2025???Download MathType Crack  Version 2025???
Download MathType Crack Version 2025???
Google
 
Adobe InDesign Crack FREE Download 2025 link
Adobe InDesign Crack FREE Download 2025 linkAdobe InDesign Crack FREE Download 2025 link
Adobe InDesign Crack FREE Download 2025 link
mahmadzubair09
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
What Do Candidates Really Think About AI-Powered Recruitment Tools?
What Do Candidates Really Think About AI-Powered Recruitment Tools?What Do Candidates Really Think About AI-Powered Recruitment Tools?
What Do Candidates Really Think About AI-Powered Recruitment Tools?
HireME
 
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
!%& IDM Crack with Internet Download Manager 6.42 Build 32 >
Ranking Google
 
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
Surviving a Downturn Making Smarter Portfolio Decisions with OnePlan - Webina...
OnePlan Solutions
 
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
PRTG Network Monitor Crack Latest Version & Serial Key 2025 [100% Working]
saimabibi60507
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
Sequence Diagrams With Pictures (1).pptx
Sequence Diagrams With Pictures (1).pptxSequence Diagrams With Pictures (1).pptx
Sequence Diagrams With Pictures (1).pptx
aashrithakondapalli8
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
GDS SYSTEM | GLOBAL DISTRIBUTION SYSTEM
GDS SYSTEM | GLOBAL  DISTRIBUTION SYSTEMGDS SYSTEM | GLOBAL  DISTRIBUTION SYSTEM
GDS SYSTEM | GLOBAL DISTRIBUTION SYSTEM
philipnathen82
 
Tools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google CertificateTools of the Trade: Linux and SQL - Google Certificate
Tools of the Trade: Linux and SQL - Google Certificate
VICTOR MAESTRE RAMIREZ
 
Microsoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptxMicrosoft Excel Core Points Training.pptx
Microsoft Excel Core Points Training.pptx
Mekonnen
 
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdfTop Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
Top Magento Hyvä Theme Features That Make It Ideal for E-commerce.pdf
evrigsolution
 
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint PresentationFrom Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
From Vibe Coding to Vibe Testing - Complete PowerPoint Presentation
Shay Ginsbourg
 
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with PrometheusMeet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Meet the New Kid in the Sandbox - Integrating Visualization with Prometheus
Eric D. Schabell
 
Digital Twins Software Service in Belfast
Digital Twins Software Service in BelfastDigital Twins Software Service in Belfast
Digital Twins Software Service in Belfast
julia smits
 
Ad

Introduction to Computer Programming (general background)

  • 1. Introduction to Programming 授課老師: Chao-Lung Yang (楊朝龍)
  • 2. Why do we need to learn programming?  When did you have your first computer?  Did you learn programming or coding before?  How is this world running under computing?  Let’s look at how other people thinking?  What most school don't teach
  • 3. Introduction  Basis of Programming Language  Introduction of C#
  • 4. Computer Program  What is a computer program?  Series of instructions that directs computer to perform tasks  Simply, a program is like a converter, which reads an input and outputs useful information
  • 5. Windows Applications  Windows Applications  A Graphical User Interface (GUI)  Allows you to interact with the software using text, graphics, and visual images such as icons  Controls how you enter data and instructions and how the screen displays information  Console Applications  For DOS or UNIX/Linux  Designed to be used by a text-only computer interface (Command-line Interface)  Interacts with a console application using only a keyboard
  • 6. Types of Programming Languages  Programming language: a notion for writing programs and is used to communicate instructions.  Programming languages can be divided into low-level languages and high-level languages  Low level languages  Machine-dependent runs only on one type of computer  Close to the language which computers can read  Ex: Machine and Assembly Languages  High level languages  Often machine-independent can run on many different types of computers and operating systems  Close to the language which we can read
  • 7. Low-Level Languages Machine Language  Only language computer directly recognizes  Most efficient  Uses a series of binary digits (1s and 0s) with a combination of numbers and letters that represent binary digits 0111 0001 0000 1111 1001 1101 1011 0001
  • 8. Low-Level Languages (con’t) Assembly Language  Instructions made up of symbolic instruction codes, meaningful abbreviations and codes  Source program contains code to be converted to machine language MOV AX 01 MOV BX 02 ADD AX BX
  • 9. High-Level Languages  High Level Languages are more close to our human’s languages.  They are also referred as Half-English programming languages.  The programs have to be converted or complied to the machine languages.  Less efficient but more programmer friendly  Examples: Basic、C/C++、C#、Java、FORTRAN、 COBOL, Pascal and so on.
  • 10. High-Level Languages (con’t) There are two basic approaches to implementing a program in a higher-level language: Compilers  A source program is converted into machine language before being executed.  A source program will be inspected the syntax before being complied.
  • 11. High-Level Languages (con’t) Interpreters  Translates and executes one program code statement at a time  Less efficient  Easy to find errors and flexible  Examples: Web programming languages -Scripts (VBScript and JavaScript)
  • 12. Execution of Programs  When CPU executes a machine language program, it read the instructions stored in memory (RAMs) and execute (Fetch-and-execute).  CPU fetches the instructions sequentially.  CPU can NOT understand what a program wants to do. It just computes very fast.
  • 13. Central Processing Unit The CPU consists of a variety of parts including:  Control unit: directs the other parts of the computer system to execute stored program instructions.  Arithmetic and Logic Unit (ALU): performs mathematical operations as well as logical operations.  Registers: are temporary storage areas for data or instructions. For example: to add two numbers which are stored at registers.
  • 14. Random-Access Memory  Before the CPU can execute a program, program instructions and data must be placed into memory from an input device or storage device.  Memory is the part of the computer that stores data and program instructions for processing.  Once the necessary data and instructions are in memory, the CPU performs “Fetch and Execute”.  Each location in memory is identified by an address.  The control unit can find data and instructions based on these addresses.
  • 15. Example: Execution of Programs  k← i + j  retrieve i  retrieve j  perform i+j  store the result to k
  • 16. Introduction of C#  .NET Framework  C#  Vision Studio 2010
  • 17. .NET Framework  .NET Framework is the latest programming develop platform offered by Microsoft.  The current version is 4.0.  The class library and the Common Language Runtime (CLR) together constitute the .NET Framework.  Users can use Visual Basic, C++, and C# to write programs based on .NET Framework.  Programs developed on .NET Framework are not complied to machine language, but intermediate byte- code called “MSIL” (Microsoft Intermediate Language)。
  • 18. .NET Framework (con’t)  When execution of the byte-code, MSIL is JIT(Just In Time) complied to machine language by CLR. 2010 7
  • 19. C#  C# (C Sharp) is developed by the team leaded by Anders Hejlsberg  C# is introduced on 2000 and released on 2002  Object-oriented programming language based on C++  Accepted as a standard for Web applications and XML- based Web services  Uses a JIT compiler  Resulting code is called Microsoft Intermediate Language (MSIL)
  • 20. Visual Studio  Development Environment  A set of tools which provides programmers to build, edit, compile, and maintain programs  Currently, most of high-level languages have their own development environment, which is referred to as IDE (Integrated Development Environment).  IDE is a software application which enables programmers to edit source codes, compile, debug, and manage programs throughout software development.
  • 21. Visual Studio (con’t)  What is Visual Studio?  .NET is set of technologies that allows program to run on Internet  Comprised of Visual Basic, Visual C++, Visual C#, and Visual J#  Visual Studio 2005/2008/2010 is an Integrated Development Environment (IDE) from Microsoft  Visual Studio 2005/2008/2010 is an IDE which supports .NET Framework. It can be used to develop various types of applications for Windows, ASP.NET, console, and Web Services.
  • 22. Visual Studio (con’t)  Applications developed in IDE of Visual Studio are executed on the CLR platform of .NET Framework: /2010 4.
  • 23. Visual Studio (con’t)  The functions of Visual Studio  IDE for multiple programming languages  Powerful functions of project management  Project templates are offered  Visual program-developing GUI  IntelliSense-autocompletion  Complete functions of debugger