SlideShare a Scribd company logo
1 of 18
Hardware &
Software
Programming
P102 Prog. Fundamentals I: Software / Slide 2
Four components of a computer system:
CPU - central processing unit
– Makes decisions, performs computations, and
delegates input/output requests
Memory: Disk Drives, CD drives, Tape drives, USB
flash drives.
– Stores information
Input devices: Keyboard, Mouse,
– Gets information from the user to the computer
Output devices: monitor
– Sends information from computer to the user
Hardware
P102 Prog. Fundamentals I: Software / Slide 3
Hardware
Memory
CPU
Input
Devices
Output
Devices
P102 Prog. Fundamentals I: Software / Slide 4
S y s t e m
S o f t w a r e
A p p lic a t io n
S o f t w a r e
S o f t w a r e
P102 Prog. Fundamentals I: Software / Slide 5
Application software
Easy-to-use programs designed to perform
specific tasks
System software
Programs that support the execution and
development of other programs
Two major types
–Operating systems
–Translation systems (compilers & linkers)
Software
P102 Prog. Fundamentals I: Software / Slide 6
Copyright © 2000 by Brooks/Cole Publishing Company
A division of International Thomson Publishing Inc.
P102 Prog. Fundamentals I: Software / Slide 7
Computer Software Relationships
User
Interface
Basic Input and Output Services (BIOS)
• needed for a computer to boot up
User Interface Operating System
User Interface Application Programs
Computer Hardware
P102 Prog. Fundamentals I: Software / Slide 8
Application Software
Application software makes computer popular and
easy to use
Common application software:
 Microsoft Word, WordPerfect
 PowerPoint
 Netscape, Internet Explorer
 PhotoShop, Photo-Paint
 Quick Time
 Dreamweaver
P102 Prog. Fundamentals I: Software / Slide 9
Controls and manages the computing resources
Examples
Windows, Unix, MSDOS,
Important services that an operating system
provides:
Security: prevent unauthorized users from accessing
the system
Commands to manipulate the file system
Input and output on a variety of devices
Window management
Operating System
102 Prog. Fundamentals I: Software / Slide 10
What is a (programming) language?
A program needs to be written in a language
There are many programming languages
Low-level, understandable by a computer
High-level, needs a translator!
C++ is a high level programming language
A sequence of instructions
A program
(in computer language)
An algorthm
(in human language)
102 Prog. Fundamentals I: Software / Slide 11
Machine binary language: unintelligible
Low-level assembly language
Mnemonic names for machine operations
Explicit manipulation of memory addresses
Machine-dependent
High-level language
Readable
Machine-independent
Levels of programming language
102 Prog. Fundamentals I: Software / Slide 12
Machine binary language Low-level assembly High-level
An example:
102 Prog. Fundamentals I: Software / Slide 13
How to translate?
Examples of compilers:
Microsoft Visual C++, Eclipse, g++
A program written in high-level programming language
(for example, C++ program)
A low-level (machine language) program that is
understandable by a computer (for example, a PC)
COMPILER (for example, Visual C++)
102 Prog. Fundamentals I: Software / Slide 14
Translation System
Set of programs used to develop software
Types of translators:
 Compiler
 Linker
Examples
Microsoft Visual C++, Eclipse, g++
102 Prog. Fundamentals I: Software / Slide 15
Software Development
Major activities
 Editing (writing the program)
 Compiling (creates .obj file)
 Linking with compiled files (creates .exe file)
– Object files
– Library modules
 Loading and executing
 Testing the program
Compile
Link
Libraryroutines
Otherobjectfiles
Think
Edit
Load
Execute
SourceProgram
102 Prog. Fundamentals I: Software / Slide 16
Integrated
Development Environments
Combine all of the capabilities that a programmer
would want while developing software (VC++ 2008,
Eclipse)
 Editor
 Compiler
 Linker
 Loader
 Debugger
 Viewer
102 Prog. Fundamentals I: Software / Slide 17
Our First Program
// a simple program
#include <iostream>
using namespace std;
int main() {
cout << "Hello world!" << endl;
return 0;
}
Print
statement
Ends execution
of main() which ends
program
Comments
Function
named
main()
indicates
start of
program
102 Prog. Fundamentals I: Software / Slide 18
Summary

More Related Content

What's hot

ITFT - Hardware & software concept
ITFT - Hardware & software conceptITFT - Hardware & software concept
ITFT - Hardware & software conceptNavneet Kaur
 
Curs Franceza Incepatori
Curs Franceza IncepatoriCurs Franceza Incepatori
Curs Franceza Incepatoridoinanelu
 
BCS 100: Introduction to Computer Science Lesson 2
BCS 100: Introduction to Computer Science Lesson 2BCS 100: Introduction to Computer Science Lesson 2
BCS 100: Introduction to Computer Science Lesson 2Ndubi Amos
 
Software and hardware
Software and hardwareSoftware and hardware
Software and hardwaremeryy21
 
Module3 system unit
Module3 system unitModule3 system unit
Module3 system unitzamzulaiha
 
Computer Components مكونات الحاسب الآلي
Computer Components مكونات الحاسب الآليComputer Components مكونات الحاسب الآلي
Computer Components مكونات الحاسب الآليIT.Amna Khdoum
 
Peripheral devices by Tahir Yasin
Peripheral devices by Tahir YasinPeripheral devices by Tahir Yasin
Peripheral devices by Tahir YasinTAHIR YASIN
 
Cte i computer_parts
Cte i computer_partsCte i computer_parts
Cte i computer_partsGlenn Barredo
 
Components of System Unit
Components of System UnitComponents of System Unit
Components of System Unitmariya yousaf
 
Lesson three hardware basics
Lesson three hardware basicsLesson three hardware basics
Lesson three hardware basicsMik Endale
 
Parts of a computer
Parts of a computerParts of a computer
Parts of a computerestebanfg13
 

What's hot (20)

C with lab
C with labC with lab
C with lab
 
ITFT - Hardware & software concept
ITFT - Hardware & software conceptITFT - Hardware & software concept
ITFT - Hardware & software concept
 
Curs Franceza Incepatori
Curs Franceza IncepatoriCurs Franceza Incepatori
Curs Franceza Incepatori
 
BCS 100: Introduction to Computer Science Lesson 2
BCS 100: Introduction to Computer Science Lesson 2BCS 100: Introduction to Computer Science Lesson 2
BCS 100: Introduction to Computer Science Lesson 2
 
STRATEGIC INTERVENTION MATERIAL
STRATEGIC INTERVENTION MATERIALSTRATEGIC INTERVENTION MATERIAL
STRATEGIC INTERVENTION MATERIAL
 
Software and hardware
Software and hardwareSoftware and hardware
Software and hardware
 
Sim grade 10
Sim grade 10Sim grade 10
Sim grade 10
 
System unit
System unitSystem unit
System unit
 
Module3 system unit
Module3 system unitModule3 system unit
Module3 system unit
 
Computer Components مكونات الحاسب الآلي
Computer Components مكونات الحاسب الآليComputer Components مكونات الحاسب الآلي
Computer Components مكونات الحاسب الآلي
 
Peripheral devices by Tahir Yasin
Peripheral devices by Tahir YasinPeripheral devices by Tahir Yasin
Peripheral devices by Tahir Yasin
 
Cte i computer_parts
Cte i computer_partsCte i computer_parts
Cte i computer_parts
 
Components of System Unit
Components of System UnitComponents of System Unit
Components of System Unit
 
Latihan uts
Latihan utsLatihan uts
Latihan uts
 
Lesson three hardware basics
Lesson three hardware basicsLesson three hardware basics
Lesson three hardware basics
 
Hardware and Software
Hardware and SoftwareHardware and Software
Hardware and Software
 
Computer fundamentals
Computer fundamentalsComputer fundamentals
Computer fundamentals
 
Group 1
Group 1Group 1
Group 1
 
Parts of a computer
Parts of a computerParts of a computer
Parts of a computer
 
PHP
PHPPHP
PHP
 

Similar to Hardware & Software Programming Fundamentals

Software and hardware presentation
Software and hardware presentationSoftware and hardware presentation
Software and hardware presentationnjabulo madonsela
 
Introduction to programming principles languages
Introduction to programming principles languagesIntroduction to programming principles languages
Introduction to programming principles languagesFrankie Jones
 
Computer and programing basics.pptx
Computer and programing basics.pptxComputer and programing basics.pptx
Computer and programing basics.pptxgaafergoda
 
Programming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdfProgramming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdfBernardVelasco1
 
PPS UNIT 1- R18.docx
PPS UNIT 1- R18.docxPPS UNIT 1- R18.docx
PPS UNIT 1- R18.docxUzma1102
 
Chapter1-CS115.ppt
Chapter1-CS115.pptChapter1-CS115.ppt
Chapter1-CS115.pptTyseerArman
 
Describe professional programing languages and talks
Describe professional programing languages and talks Describe professional programing languages and talks
Describe professional programing languages and talks Ed Bray
 
introductiontocomputerprogramming.pptx
introductiontocomputerprogramming.pptxintroductiontocomputerprogramming.pptx
introductiontocomputerprogramming.pptxHazardRhenz1
 
Introduction To Programming in Matlab
Introduction To Programming in MatlabIntroduction To Programming in Matlab
Introduction To Programming in MatlabDataminingTools Inc
 
Assembly chapter One.pptx
Assembly chapter One.pptxAssembly chapter One.pptx
Assembly chapter One.pptxssuserb78e291
 

Similar to Hardware & Software Programming Fundamentals (20)

Software
SoftwareSoftware
Software
 
Software and hardware presentation
Software and hardware presentationSoftware and hardware presentation
Software and hardware presentation
 
Introduction to programming principles languages
Introduction to programming principles languagesIntroduction to programming principles languages
Introduction to programming principles languages
 
Savitch Ch 01
Savitch Ch 01Savitch Ch 01
Savitch Ch 01
 
Computer Programming - Lecture 1
Computer Programming - Lecture 1Computer Programming - Lecture 1
Computer Programming - Lecture 1
 
Savitch ch 01
Savitch ch 01Savitch ch 01
Savitch ch 01
 
Savitch ch 01
Savitch ch 01Savitch ch 01
Savitch ch 01
 
Computer and programing basics.pptx
Computer and programing basics.pptxComputer and programing basics.pptx
Computer and programing basics.pptx
 
SOFTWARE
SOFTWARESOFTWARE
SOFTWARE
 
Programming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdfProgramming_Fundamentals_Chapter_1_INTRO.pdf
Programming_Fundamentals_Chapter_1_INTRO.pdf
 
PPS UNIT 1- R18.docx
PPS UNIT 1- R18.docxPPS UNIT 1- R18.docx
PPS UNIT 1- R18.docx
 
L2 ch1
L2  ch1L2  ch1
L2 ch1
 
Software Concepts Notes
Software Concepts NotesSoftware Concepts Notes
Software Concepts Notes
 
Chapter1-CS115.ppt
Chapter1-CS115.pptChapter1-CS115.ppt
Chapter1-CS115.ppt
 
Describe professional programing languages and talks
Describe professional programing languages and talks Describe professional programing languages and talks
Describe professional programing languages and talks
 
introductiontocomputerprogramming.pptx
introductiontocomputerprogramming.pptxintroductiontocomputerprogramming.pptx
introductiontocomputerprogramming.pptx
 
Introduction To Programming in Matlab
Introduction To Programming in MatlabIntroduction To Programming in Matlab
Introduction To Programming in Matlab
 
CISY 105 Chapter 1
CISY 105 Chapter 1CISY 105 Chapter 1
CISY 105 Chapter 1
 
Chap 1 c++
Chap 1 c++Chap 1 c++
Chap 1 c++
 
Assembly chapter One.pptx
Assembly chapter One.pptxAssembly chapter One.pptx
Assembly chapter One.pptx
 

More from seolangit2

Teori teknologi informasi
Teori teknologi informasiTeori teknologi informasi
Teori teknologi informasiseolangit2
 
Teknologi perangkat lunak
Teknologi perangkat lunakTeknologi perangkat lunak
Teknologi perangkat lunakseolangit2
 
Sejarah dan perkembangan komputer
Sejarah dan perkembangan komputerSejarah dan perkembangan komputer
Sejarah dan perkembangan komputerseolangit2
 
Prinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiPrinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiseolangit2
 
Pengamanan jaringan komputer
Pengamanan jaringan komputerPengamanan jaringan komputer
Pengamanan jaringan komputerseolangit2
 
Makalah perkembangan-dan-peranan-komputer-1
Makalah perkembangan-dan-peranan-komputer-1Makalah perkembangan-dan-peranan-komputer-1
Makalah perkembangan-dan-peranan-komputer-1seolangit2
 
Komputer dan masyarakat komputer dan dunia hiburan
Komputer dan masyarakat komputer dan dunia hiburanKomputer dan masyarakat komputer dan dunia hiburan
Komputer dan masyarakat komputer dan dunia hiburanseolangit2
 
Keamanan jaringan komputer
Keamanan jaringan komputerKeamanan jaringan komputer
Keamanan jaringan komputerseolangit2
 
Administrasi jaringan
Administrasi jaringanAdministrasi jaringan
Administrasi jaringanseolangit2
 
Perkembangan teknologi informasi
Perkembangan teknologi informasiPerkembangan teknologi informasi
Perkembangan teknologi informasiseolangit2
 
Perkembangan dunia komputer
Perkembangan dunia komputerPerkembangan dunia komputer
Perkembangan dunia komputerseolangit2
 
Pengenalan hardware
Pengenalan hardwarePengenalan hardware
Pengenalan hardwareseolangit2
 
perangkat Hardware atau perangkat keras
perangkat  Hardware atau perangkat kerasperangkat  Hardware atau perangkat keras
perangkat Hardware atau perangkat kerasseolangit2
 
Pengenalan teknologi komputer
Pengenalan teknologi komputerPengenalan teknologi komputer
Pengenalan teknologi komputerseolangit2
 
JARINGAN KOMPUTER DASAR
JARINGAN KOMPUTER DASARJARINGAN KOMPUTER DASAR
JARINGAN KOMPUTER DASARseolangit2
 
Prinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiPrinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiseolangit2
 
Lan (local area network)
Lan (local area network)Lan (local area network)
Lan (local area network)seolangit2
 

More from seolangit2 (18)

Teori teknologi informasi
Teori teknologi informasiTeori teknologi informasi
Teori teknologi informasi
 
Teknologi perangkat lunak
Teknologi perangkat lunakTeknologi perangkat lunak
Teknologi perangkat lunak
 
Sejarah dan perkembangan komputer
Sejarah dan perkembangan komputerSejarah dan perkembangan komputer
Sejarah dan perkembangan komputer
 
Prinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiPrinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasi
 
Pengamanan jaringan komputer
Pengamanan jaringan komputerPengamanan jaringan komputer
Pengamanan jaringan komputer
 
Makalah perkembangan-dan-peranan-komputer-1
Makalah perkembangan-dan-peranan-komputer-1Makalah perkembangan-dan-peranan-komputer-1
Makalah perkembangan-dan-peranan-komputer-1
 
Komputer dan masyarakat komputer dan dunia hiburan
Komputer dan masyarakat komputer dan dunia hiburanKomputer dan masyarakat komputer dan dunia hiburan
Komputer dan masyarakat komputer dan dunia hiburan
 
Keamanan jaringan komputer
Keamanan jaringan komputerKeamanan jaringan komputer
Keamanan jaringan komputer
 
Administrasi jaringan
Administrasi jaringanAdministrasi jaringan
Administrasi jaringan
 
Perkembangan teknologi informasi
Perkembangan teknologi informasiPerkembangan teknologi informasi
Perkembangan teknologi informasi
 
Perkembangan dunia komputer
Perkembangan dunia komputerPerkembangan dunia komputer
Perkembangan dunia komputer
 
Pengenalan hardware
Pengenalan hardwarePengenalan hardware
Pengenalan hardware
 
perangkat Hardware atau perangkat keras
perangkat  Hardware atau perangkat kerasperangkat  Hardware atau perangkat keras
perangkat Hardware atau perangkat keras
 
Pengenalan teknologi komputer
Pengenalan teknologi komputerPengenalan teknologi komputer
Pengenalan teknologi komputer
 
JARINGAN KOMPUTER DASAR
JARINGAN KOMPUTER DASARJARINGAN KOMPUTER DASAR
JARINGAN KOMPUTER DASAR
 
Prinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasiPrinsip dan aplikasi teknologi,informasi,komunikasi
Prinsip dan aplikasi teknologi,informasi,komunikasi
 
Linux
LinuxLinux
Linux
 
Lan (local area network)
Lan (local area network)Lan (local area network)
Lan (local area network)
 

Recently uploaded

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationkaushalgiri8080
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number SystemsJheuzeDellosa
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Recently uploaded (20)

Project Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanationProject Based Learning (A.I).pptx detail explanation
Project Based Learning (A.I).pptx detail explanation
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
What is Binary Language? Computer Number Systems
What is Binary Language?  Computer Number SystemsWhat is Binary Language?  Computer Number Systems
What is Binary Language? Computer Number Systems
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 

Hardware & Software Programming Fundamentals

  • 2. P102 Prog. Fundamentals I: Software / Slide 2 Four components of a computer system: CPU - central processing unit – Makes decisions, performs computations, and delegates input/output requests Memory: Disk Drives, CD drives, Tape drives, USB flash drives. – Stores information Input devices: Keyboard, Mouse, – Gets information from the user to the computer Output devices: monitor – Sends information from computer to the user Hardware
  • 3. P102 Prog. Fundamentals I: Software / Slide 3 Hardware Memory CPU Input Devices Output Devices
  • 4. P102 Prog. Fundamentals I: Software / Slide 4 S y s t e m S o f t w a r e A p p lic a t io n S o f t w a r e S o f t w a r e
  • 5. P102 Prog. Fundamentals I: Software / Slide 5 Application software Easy-to-use programs designed to perform specific tasks System software Programs that support the execution and development of other programs Two major types –Operating systems –Translation systems (compilers & linkers) Software
  • 6. P102 Prog. Fundamentals I: Software / Slide 6 Copyright © 2000 by Brooks/Cole Publishing Company A division of International Thomson Publishing Inc.
  • 7. P102 Prog. Fundamentals I: Software / Slide 7 Computer Software Relationships User Interface Basic Input and Output Services (BIOS) • needed for a computer to boot up User Interface Operating System User Interface Application Programs Computer Hardware
  • 8. P102 Prog. Fundamentals I: Software / Slide 8 Application Software Application software makes computer popular and easy to use Common application software:  Microsoft Word, WordPerfect  PowerPoint  Netscape, Internet Explorer  PhotoShop, Photo-Paint  Quick Time  Dreamweaver
  • 9. P102 Prog. Fundamentals I: Software / Slide 9 Controls and manages the computing resources Examples Windows, Unix, MSDOS, Important services that an operating system provides: Security: prevent unauthorized users from accessing the system Commands to manipulate the file system Input and output on a variety of devices Window management Operating System
  • 10. 102 Prog. Fundamentals I: Software / Slide 10 What is a (programming) language? A program needs to be written in a language There are many programming languages Low-level, understandable by a computer High-level, needs a translator! C++ is a high level programming language A sequence of instructions A program (in computer language) An algorthm (in human language)
  • 11. 102 Prog. Fundamentals I: Software / Slide 11 Machine binary language: unintelligible Low-level assembly language Mnemonic names for machine operations Explicit manipulation of memory addresses Machine-dependent High-level language Readable Machine-independent Levels of programming language
  • 12. 102 Prog. Fundamentals I: Software / Slide 12 Machine binary language Low-level assembly High-level An example:
  • 13. 102 Prog. Fundamentals I: Software / Slide 13 How to translate? Examples of compilers: Microsoft Visual C++, Eclipse, g++ A program written in high-level programming language (for example, C++ program) A low-level (machine language) program that is understandable by a computer (for example, a PC) COMPILER (for example, Visual C++)
  • 14. 102 Prog. Fundamentals I: Software / Slide 14 Translation System Set of programs used to develop software Types of translators:  Compiler  Linker Examples Microsoft Visual C++, Eclipse, g++
  • 15. 102 Prog. Fundamentals I: Software / Slide 15 Software Development Major activities  Editing (writing the program)  Compiling (creates .obj file)  Linking with compiled files (creates .exe file) – Object files – Library modules  Loading and executing  Testing the program Compile Link Libraryroutines Otherobjectfiles Think Edit Load Execute SourceProgram
  • 16. 102 Prog. Fundamentals I: Software / Slide 16 Integrated Development Environments Combine all of the capabilities that a programmer would want while developing software (VC++ 2008, Eclipse)  Editor  Compiler  Linker  Loader  Debugger  Viewer
  • 17. 102 Prog. Fundamentals I: Software / Slide 17 Our First Program // a simple program #include <iostream> using namespace std; int main() { cout << "Hello world!" << endl; return 0; } Print statement Ends execution of main() which ends program Comments Function named main() indicates start of program
  • 18. 102 Prog. Fundamentals I: Software / Slide 18 Summary

Editor's Notes

  1. High-level lang., easy Low-level, hard