Introduction to Computer Science --- Fall 2019

Textbook

     Foundations of Computer Science (fourth edition), Behrouz A. Forouzan, Cengage Learning, 2018.

Reference resource:

    Introduction to Qnew    http://qnew.nhu.edu.tw

Prerequisite Not required

Handouts

   Ch00-Course Overview       Ch01-Introduction    Ch01-Introduction-Extension     Ch02-Number Systems     Ch03-Data Storage  

   Ch04-Operations on Data   Ch05-Computer Organization   Ch06-Computer Networks&Internet   Ch07-Operating Systems

   Ch08-Algorithms               Ch09-Programming Languages   Ch11-Data Structures    Ch12-Abstract Data Types

   Ch13-File Structures         Ch14-Databases     Ch-15-Data Compression       Ch18-Artificial Intelligence

Homeworks (paper-based)

   HW#2 (due date: 1:10 PM, Dec. 17, 2019): All problems and their answers are written on paper A4 in manual draft

     Final-Homework2 Problems 

   Midterm-Remedial Teaching Problems  (Due date: Nov. 18, 2019 for CS-4(Mon))

             Suit for students that their scores in Midterm Test are below 69 (option for scores 65-69)

   HW#1 (due date: 1:10 PM, Nov. 5, 2019): All problems and their answers are written on paper A4 in manual draft

     Midterm-Homework1 Problems 

 

Homeworks (video-based):Introduction to Qnew    http://qnew.nhu.edu.tw

 

Contents

This course presents an introductory survey of computer science. It follows a bottom-up arrangement of subjects that progresses from the concrete to the abstract and makes all the applications for information technologies. These covered topics are as follows. Introduction to computer science, Number systems, Data encoding and storage, Computer architecture, Networking and protocol, Operating systems, Algorithms, Programming languages, Software engineering, Data structure, Abstract data types, File structures, Databases, Data compression, and Information security.

 

      (The schedule is shown as below that may be changed depending on students' learning status)

0. Course Overview

1. Introduction: Turing model, Von Neumann model, Computer components, and History.

2. Number Systems: Positional number systems and Non-positional number systems.

3. Data Storage: Data types, Storing numbers, Storing text, Storing audio, Storing images, and Storing video. 

4. Operations on Data: Logic operations, Shift operations, and Arithmetic operations.

5. Computer Organization: Central processing unit, Main memory, I/O subsystem, Subsystem interconnection, Program execution, Different architectures, and A simple computer.

6. Computer Networks and Internet: Introduction, TCP/IP protocol suite, Layers, and Internet applications.

7. Operating Systems: Introduction, Evolution, Computers, and survey of operating systems.

Midterm Test 

8. Algorithms: Concept, Three constructs, Algorithm representation, A more formal definition, Basic algorithms, Sub-algorithms, and Recursion.

9. Programming Languages: Evolution, Translation, Programming paradigms, and Common concepts.

11. Data Structure: Arrays, Records, and Linked lists.

12. Abstract Data Types: Background, Stacks, Queues, General linear lists, Trees, Binary trees, Binary search trees, and Graphs.

13. File Structure: Access methods, Sequential files, Indexed files, Hashed files, Directories, and Text versus binary.

14. Databases: Introduction, Database management systems, Database architecture, Database models, Relational database model, Operations on relations, Database design, and Other database models.

15. Data Compression: Lossless compression and Lossy compression methods.

18. Artificial Intelligence: Searching.

Final Test 

Grading

        Homework (Assignments) 35%, Mid-term Test 30%, Final Test 35%,

        and Attendance -5%~5% (Final test may be rejected if the number of absences is up to 6 week-times)

 

B.Objectives

Objectives

Can understand the historical origin of computer development and the evolution of various models and the impact on modern life.

Familiar with a variety of digital representation and mutual conversion and data storage and computing.

Can have the computer hardware organization structure and can analyze how its software program works in the hardware.

Can understand the composition and analysis of computer networks in the Internet to send and receive information on the operation of the process.

Can have the data structure of the establishment and familiar with the basic sorting and searching algorithms, and with a programming language.

Can understand advanced concepts of computer science including basic concepts such as data base, data compression, information security and artificial intelligence, which will help the continuation of learning

Can take the initiative to do the class notes and focuses in the classroom and implement the assignments and programming.

Can take the initiative to interact learning with peers.