Software Programming J. Holvikivi 2014.

Slides:



Advertisements
Similar presentations
Course Outline Presentation Term: F09 Faculty Name : Asma Sanam Larik Course Name :INTRO TO COMPUTING Course Code : CSE145 Section :1 Semester : 1.
Advertisements

Chapter 8 High-Level Programming Languages. 8-2 Chapter Goals Describe the translation process and distinguish between assembly, compilation, interpretation,
 Suppose for a moment that you were asked to perform a task and were given the following list of instructions to perform:
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
Overview of Programming and Problem Solving ROBERT REAVES.
 Computer hardware components are the physical pieces of the computer.  The major hardware components of a computer are: – The central processing.
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
Working with JavaScript. 2 Objectives Introducing JavaScript Inserting JavaScript into a Web Page File Writing Output to the Web Page Working with Variables.
Lecture 1: Intro to Computers Yoni Fridman 6/28/01 6/28/01.
XP 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial 10.
Chapter 6: An Introduction to System Software and Virtual Machines
Microsoft Visual Basic 2012 CHAPTER ONE Introduction to Visual Basic 2012 Programming.
Microsoft Visual Basic 2005 CHAPTER 1 Introduction to Visual Basic 2005 Programming.
High-Level Programming Languages: C++
CIS Computer Programming Logic
By Yukyong Chung.  Given the terms of computational concepts, the students will be able to state examples matching the Scratch blocks.  The students.
Levels of Architecture & Language CHAPTER 1 © copyright Bobby Hoggard / material may not be redistributed without permission.
PROGRAMMING LANGUAGES Prof. Lani Cantonjos. PROGRAM - set of step-by-step instructions that tells or directs the computer what to do. PROGRAMMING LANGUAGE.
TMF1013 : Introduction To Computing Lecture 1 : Fundamental of Computer ComputerFoudamentals.
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
XP Tutorial 10New Perspectives on Creating Web Pages with HTML, XHTML, and XML 1 Working with JavaScript Creating a Programmable Web Page for North Pole.
Introduction to Computer Systems and the Java Programming Language.
Chapter 8 High-Level Programming Languages. 8-2 Chapter Goals Describe the translation process and distinguish between assembly, compilation, interpretation,
Overview of Programming and Problem Solving Textbook Chapter 1 1.
XP Tutorial 10New Perspectives on HTML and XHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties Tutorial.
CHAPTER 1 INTRODUCTION 1 st Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
CHAPTER 1 INTRODUCTION 2 nd Semester H King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1.
Computer Software Types Three layers of software Operation.
CS2301:Computer Programming 2
CSC 1010 Programming for All Lecture 1 Some material courtesy of Python for Informatics: Exploring Information (
1 Overview of Programming Principles of Computers.
Chapter 4 Software. Introduction Program: is a set of sequence instructions that tell the computer what to do. Software: is a collection of programs,
IST 210: PHP LOGIC IST 210: Organization of Data IST210 1.
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. Introduction to Computers and Computing.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
XP Tutorial 10New Perspectives on HTML, XHTML, and DHTML, Comprehensive 1 Working with JavaScript Creating a Programmable Web Page for North Pole Novelties.
Microsoft Visual Basic 2015 CHAPTER ONE Introduction to Visual Basic 2015 Programming.
IST 210: PHP Logic IST 210: Organization of Data IST2101.
Computer Basics.
Chapter 1 Introduction 2nd Semester H
Invitation to Computer Science 6th Edition
Java Programming: From the Ground Up
Basic 1960s It was designed to emphasize ease of use. Became widespread on microcomputers It is relatively simple. Will make it easier for people with.
Key Ideas from day 1 slides
Introduction to Visual Basic 2008 Programming
Programming Mehdi Bukhari.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
An Introduction to Programming and VB.NET
Starter Read the Feedback Click on Add new Feedback Open Realsmart
The Processor and Machine Language
Developing Applications
Computers: Hardware and Software
Loops CIS 40 – Introduction to Programming in Python
Coding Concepts (Basics)
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
Programming.
High Level Programming Languages
Low Level Programming Languages
Computer Science Core Concepts
King Saud University College Of Applied Studies and Community Services CSC 1101 Computer Programming-1 Done By: Asmal Alosaimi Edited By: Fatimah Alakeel.
and Program Development
Principles of Programming Languages
ICT Gaming Lesson 2.
Tonga Institute of Higher Education IT 141: Information Systems
Tonga Institute of Higher Education IT 141: Information Systems
ICS103 Programming in C 1: Overview of Computers And Programming
Programming Logic and Design Eighth Edition
COMPUTING.
Presentation transcript:

Software Programming J. Holvikivi 2014

Basic principle of how a computer works INPUT OUTPUT Information Data PROCESS

What Can Computers Do? Input/Output operations Reads input Writes output Processing operations Math (computation) Decision making (logic) Photo courtesy of Imation Corporation

What Happens Inside Control flow Data flow Instruction flow Control Unit Arithmetic Logic Unit Data flow Instruction flow Input Unit Output Unit Main memory

ALU Arithmetic and Logic Unit Arithmetic and Logic Unit performs all computations and logical operations 2 + 2 = 4 1 AND 0 is NOT TRUE 2 + 2 < 5

Machine instructions Adding values stored in memory Step 1: Get the value from memory location 6C and place it in a register. =LOAD Step 2: Get the other value to be added from memory location 6D and place it in another register. =LOAD Step 3: Activate the addition circuitry with the registers used in steps 1 and 2 as inputs with another register designated to store the result. =ADD Step 4: Store the result in memory location 6E. =STORE Step 5: Stop. =HALT others: MOVE, OR, AND, ROTATE, JUMP

Machine language Code: Step 1: 156C LOAD Step 2: 166D LOAD Step 3: 5056 ADD Step 4: 306E STORE Step 5: C000 HALT

Working with a file Memory: RAM Hard disk Processor Save Device drivers Windows OS Text file MS Word Load to memory MsWord Device drivers and others Text file OS kernel Save Data files Processor

Software System software Application software office programs Operating system GUI Utilities Device drivers networking software Application software office programs graphical software browsers 15.11.2018 Jaana Holvikivi

Programming Languages Machine Language: 56FC Assembler (mnemonic): ADD Procedural Languages Fortran, Pascal, Python Cobol, BASIC Object-Oriented Languages C ++ Java, C#

Programming Languages Functional languages Prolog, XSLT, Haskell Scripting languages Javascript, php Application development tools .NET Framework Oracle UML tools Natural Languages – not yet

Algorithm A sequence of steps that directs the execution of a task A sheet of music operating instructions for a washing machine instructions for constructing model airplanes Algorithms in computers programs the intelligence required to solve a problem or to perform a task is encoded in the algorithm to follow the directions of an algorithm is "merely mechanical"

Program design Start Problem solving Algorithm flow chart pseudo code Source code Compiler Interpreter Executable program in machine language Instructions in machine language End

Programming language features Data types Constants Variables Expressions Operators Statements: conditional, loops Functions Objects Methods Events 15.11.2018 Jaana Holvikivi

Scratch: Computational Concepts Description sequence identifying a series of steps for a task loops running the same sequence multiple times parallelism making things happen at the same time events one thing causing another thing to happen conditionals making decisions based on conditions operators support for mathematical and logical expressions data storing, retrieving, and updating values 15.11.2018 Jaana Holvikivi

Scratch: Computational Practices Description being iterative and incremental developing a little bit, then trying it out, then developing some more testing and debugging making sure that things work – and finding and fixing mistakes reusing and remixing making something by building on what others – or you – have done abstracting and modularizing building something large by putting together collections of smaller parts 15.11.2018 Jaana Holvikivi

Features in Scratch 15.11.2018 Jaana Holvikivi

Operators Assignment Operators + addition - Subtraction * Multiplication / Division % remainder Comparison Operators, true or false == is equal to != is not equal 5!=8 returns true < less than > Greater than >= Greater than or equal <= less than or equal 15.11.2018 Jaana Holvikivi

Operators RESULT Logical Operators && AND || OR ! NOT AND 1 OR NOT   1 OR NOT 15.11.2018 Jaana Holvikivi

Conditional statements 15.11.2018 Jaana Holvikivi

Loops Wait Repeat Forever Expressions 15.11.2018 Jaana Holvikivi

First Steps in programming use sequence, selection, and repetition in programs and various forms of input and output & variables

Effective Saving Strategies Your Responsibility To Save And Backup Frequently. Save Every 5 Minutes Change Filename Every 15 Minutes No Auto Saves On Most Developer Software

Task 1 Go to Scratch home page, and Join Scratch. You need to create an account in order to be able to save your work. Use some other ID and password than in Metropolia systems. Go through the basics of project creation selecting Try it out or holiday card: http://scratch.mit.edu/hoc 15.11.2018 Jaana Holvikivi

Task 2 Explore projects that are posted on the Scratch site. Try different types of projects! Choose one interesting project and try to understand its functioning. Show the project to your team and explain it. 15.11.2018 Jaana Holvikivi

Task 3 Explore different features Scripts, Costumes and Sounds. Try different types of projects, see what is available for modification! Select some very serious science or mathematics project for modification, such as fractals or operating systems. Finally, create a project where you can ask your classmates to join. 15.11.2018 Jaana Holvikivi