Basic Concepts: computer, program, programming …

Slides:



Advertisements
Similar presentations
Designing a Program & the Java Programming Language
Advertisements

Chapter 8 High-Level Programming Languages. 8-2 Chapter Goals Describe the translation process and distinguish between assembly, compilation, interpretation,
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
Computer Science Basics CS 216 Fall Operating Systems interface to the hardware for the user and programs The two operating systems that you are.
Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Starting Out with Programming Logic & Design First Edition by Tony Gaddis.
1 Engineering Problem Solving With C++ An Object Based Approach Fundamental Concepts Chapter 1 Engineering Problem Solving.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Chapter 8 High-Level Programming Languages Nell Dale John Lewis.
Table 1. Software Hierarchy Levels.. Essential Tools An assembler is a program that converts source-code programs into a machine language (object file).
CMP 131 Introduction to Computer Programming Violetta Cavalli-Sforza Week 1, Lab.
CSE 1301 J Lecture 2 Intro to Java Programming Richard Gesick.
1 Chapter-01 Introduction to Computers and C++ Programming.
Parts of a Computer Why Use Binary Numbers? Source Code - Assembly - Machine Code.
Chapter 17 Programming Tools The Architecture of Computer Hardware and Systems Software: An Information Technology Approach 3rd Edition, Irv Englander.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Chapter 8 High-Level Programming Languages (modified by Erin Chambers)
Liang, Introduction to Java Programming, Ninth Edition, (c) 2013 Pearson Education, Inc. All rights reserved. 1 Chapter 1 Introduction to Computer Science.
General Computer Science for Engineers CISC 106 Lecture 02 Dr. John Cavazos Computer and Information Sciences 09/03/2010.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Chapter 1 Introduction. Goal to learn about computers and programming to compile and run your first Java program to recognize compile-time and run-time.
Programming History. Who was the first programmer?
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
1 Introduction Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Sections
Copyright © 2006 Addison-Wesley. All rights reserved.1-1 ICS 410: Programming Languages.
© 2012 Pearson Education, Inc. All rights reserved. 1-1 Why Java? Needed program portability – Program written in a language that would run on various.
Java Programming, Second Edition Chapter One Creating Your First Java Program.
1 COMP 3438 – Part II-Lecture 1: Overview of Compiler Design Dr. Zili Shao Department of Computing The Hong Kong Polytechnic Univ.
Chapter 8 High-Level Programming Languages. 8-2 Chapter Goals Describe the translation process and distinguish between assembly, compilation, interpretation,
Mrs. Ulshafer August, 2013 Java Programming Chapter 1.
School of Computer Science & Information Technology G6DICP Introduction to Computer Programming Milena Radenkovic.
1 Text Reference: Warford. 2 Computer Architecture: The design of those aspects of a computer which are visible to the programmer. Architecture Organization.
Component 4: Introduction to Information and Computer Science Unit 5: Overview of Programming Languages, Including Basic Programming Concepts Lecture 2.
1 3. Computing System Fundamentals 3.1 Language Translators.
A compiler is a computer program that translate written code (source code) into another computer language Associated with high level languages A well.
 Programming - the process of creating computer programs.
Programming Languages
Programming and Languages Dept. of Computer and Information Science IUPUI.
© 2012 Pearson Education, Inc. All rights reserved types of Java programs Application – Stand-alone program (run without a web browser) – Relaxed.
©2016 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. CSC 110 – INTRO TO COMPUTING - PROGRAMMING Overview of Programming.
CPS120: Introduction to Computer Science Variables and Constants.
Software Development Introduction
Getting Started With Java September 22, Java Bytecode  Bytecode : is a highly optimized set of instructions designed to be executed by the Java.
Chapter 11  Getting ready to program  Hardware Model  Software Model  Programming Languages  Facts about C++  Program Development Process  The Hello-world.
1 Types of Programming Language (1) Three types of programming languages 1.Machine languages Strings of numbers giving machine specific instructions Example:
Representation of Data - Instructions Start of the lesson: Open this PowerPoint from the A451 page – Representation of Data/ Instructions How confident.
Computer Programming Week 1: The Basics of CP 1 st semester 2012 School of Information Technology Website:
Programming 2 Intro to Java Machine code Assembly languages Fortran Basic Pascal Scheme CC++ Java LISP Smalltalk Smalltalk-80.
Programming Languages 2nd edition Tucker and Noonan
Software Development Environment
Lecture 1b- Introduction
Why study programming languages?
Engineering Problem Solving With C An Object Based Approach
Sections Basic Concepts of Programming
Microprocessor and Assembly Language
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Unit# 8: Introduction to Computer Programming
TRANSLATORS AND IDEs Key Revision Points.
Unit 1: Introduction Lesson 1: PArts of a java program
CSE 113 A January 19 – 23, 2009.
January 19 – 23, 2009 CSE 113 B.
CS105 Introduction to Computer Concepts Intro to programming
CMP 131 Introduction to Computer Programming
High Level Programming Languages
Low Level Programming Languages
ICT Programming Lesson 1:
강의 내용 및 방법 접근방법 리포트 시험 Lambda Calculus, Proof of Correctness
ICS103 Programming in C 1: Overview of Computers And Programming
Introduction to Computer Science
Presentation transcript:

Basic Concepts: computer, program, programming … COM S 207 Basic Concepts: computer, program, programming … Instructor: Ying Cai Department of Computer Science Iowa State University yingcai@iastate.edu

In the beginning Everything in computer is coded as 0 and 1 lowercase "a"  1100001 integer 20  10100

Bit: 1 digit (either 0 or 1) Byte: 8 bits Kilo (K): 1024 Mega (M): 1024 * 1K Giga (G): 1024 * 1M

What is computer about 8-bit, 16-bit, 32-bit, 64-bit CPU?

Computer Anatomy

Program A sequence of instructions for a computer to execute All instructions are encoded into a string of 0/1 Program = stored instruction Program = CODE + data

Programming The act of writing programs

Programming language Machine language Computers use the alphabet 0 and 1 ONLY. Instructions are built from combinations of 0 and 1! Example 00101000 00000001 00000010 might mean ADD 1 and 2

Programming language Assembly language Still machine language alike, but more readable Example: ADD 1 and 2  00101000 00000001 00000010

Programming language High-level language: English-like languages FORTRAN, COBOL, Pascal, Basic, C, Icon C++, Java, ML Scheme, Lisp, Prolog Perl, Python, Ruby

Language Elements Data types Decision (if, switch, etc.) Primitive (integer, character, double, boolean, etc.) Constructed (string, list, array, object, etc.) Decision (if, switch, etc.) Loop (for, while, until, etc.) To write a program, it is critical that you understand the syntax and semantics of each instruction (also called statement).

Compiler Convert a program into machine language instructions that can be executed by a computer Compiler

Platform dependency In general, different languages and platforms need different compilers Portability and convenience are issues Compiler for Unix Compiler for Linux ::: Compiler for Mac

Java Virtual Machine A virtual machine that can execute Java binary code

Java Compiler Convert a program into machine language instructions that can be executed by a computer

Tools Editor: allows you to enter and edit instructions Compiler Programmer converts pseudo-code (which he understands) to java code (something java compiler can understand) Compiler Converts java code (something java compiler can understand) to class files (something that a Java Virtual Machine can understand) JVM (Java Virtual Machine): executes/runs class files Debugger Allows you to have the JVM execute one instruction at a time and lets you see what is going on during the execution. This will help you to find runtime errors.

Tools Integrated Development Environment (IDE): (e.g., Eclipse) has all above tools integrated into one tool.