**COM101 Computer Programming I (4-2) 5 7 **

Problem solving and algorithm development. Computer hardware and software. Introduction to programming: machine, assembly and high level languages. C programming language. Arithmetic and logical statements, data types, input/output, basic control structures(selection, iteration etc).Array data type and usage of character strings. Functions: Call-by-value and call-by-reference, scopes, recursion. Structures. Pointers. Bit manipulation. File processing.

**COM111 Introduction to Computer Engineering (1-2) 2 4 **

Programming. Package Programs, MATLAB. Two and three dimensional drawing. Graphics and Animation Programs.

**COM115 Introduction to Computer Science (2-2) 3 4 **

Basic concepts of engineering. Introduction of courses and meeting with department staff. Visiting the institutions working in the scope of computer engineering.

**PHY121 Physics I (3-2) 4 5 **

Measurement standards and units, vectors and coordinate systems, dynamics, work, energy and power, conservation of energy, systems of particles, collisions, rotation, equilibrium of solids, oscillations, gravity

**MTH105 Calculus I (4-0) 4 5 **

Functions, limit, continuity and derivative. Mean Value Theorem and applications. Definite and indefinite integrals. Logarithmic, exponential, hyperbolic and inverse trigonometric functions. L’Hopital’s Rule. Integration techniques. Area, volume and rotational surface area calculation. Applications in physics. Sequences and series. Power and Taylor series.

**COM102 Computer Programming II (4-2) 5 7****
**Introduction to C++, Classes and Objects, File Processing, Operator Overloading, Object Oriented Programming, Inheritance, Polymorphism, Templates, Stream Input / Output, Exception Handling.

**PHY122 Physics II (3-2) 4 6**

Charge, electrical field and Gauss’s Law. Basic circuits and Kirchhoff’s Laws. Magnetic field. Ampere’s Law. Faraday’s Laws. Resistance, Magnetic properties of the material. Maxwell equations. Electromagnetic waves and introduction to modern physics.

**MTH106 Calculus II (4-0) 4 6 **

Complex numbers. Vectors in the plane and space. Vector calculus. Line, plane and curves in the space. Limit and continuity in functions with several variables. Partial and directional derivatives. Tangent plane. Maximum and minimum values. Multiple integrals. Cylindrical and spherical coordinate planes. Coordinate transformations. Green Theorem. Surface integrals. Gauss and Stokes theorems.

**MTH120 Linear Algebra (3-0) 3 4 **

Matrices, determinant. System of a linear equation . Vector spaces. Base and dimension. Linear transformations. Base transformation. Inverse of a linear transformation. Characteristic equations, eigenvalues and eigenvectors and Jordan form. Numerical techniques for calculation of eigenvalues and eigenvectors. Inner product spaces, diagonality, quadratic forms. Norm of a vector space.

**ENS120 Economics (3-0) 3 4 **

Engineering and economics. Investment decisions. Technical and financial analysis. Macro and micro economics, systems, market structures, national income, inflation, unemployment

**COM267 Data Structures (3-2) 4 6 **

Introduction to programming with C++: basic data types, abstract data types and classes, collections. Abstract operators in C++ and generic data types. Data structures and their usage. Programming methods, sorting, searching algorithms and applications, storage, time analysis. Stacks and queues. Linked lists and applications. Recursion. Trees and tree searching algorithms.

**BLM231 Discrete Structures (3-0) 3 6 **

Logic. Sets. Mathematical functions. Algorithms, integers, matrices. Relations. Trees. Boolean algebra. Modeling of calculation methods. Finite and infinite sets. Permutations and combinations. Finite calculation techniques. Base concept in numbers. Order relations, equivalence relation. Graphs. Greedy algorithms. Mathematical structures.

**COM275 Digital Logic Design (3-2) 4 6 **

Functions, logic gates. Analysis and design of combinational circuits. MSI elements, flip-flops, counters, shift registers. Analysis and design of sequential circuits, state tables, state reduction and state assignment. Sequential MSI elements. Large scale system design with MSI. Control and architectural separation. Basic computer organization. Addressing techniques, decoding and processing, CPU organization, input/output organization, memory organization.

**BLM237 Introduction to Web Based Programming(3-2) 4 6**

Fundamental internet concepts, TCP/IP protocol, HTML, HTTP protocols, JavaScript and DHTML, Graphics and Multimedia, PHP, Public Key Encryption, Firewalls, Cookies.

**MAT231 Differential Equations (3-0) 3 5 **

Classification of differential equations. Solving methods of first order differential equations. Linear differential equations of higher degrees. Method of undetermined coefficients. Laplace transformation and convolution. Differential equations with several variables.

**BLM240 Programming Languages (3-2) 4 5 **

Introduction to programming languages. History and development of programming languages. Structures and meanings of the languages: CFG, BNF, recursive descent parsing, attribute grammars, Lexical and syntactic analysis using Lex and Yacc. Basic properties of the variables: name, address, type, value, scope and lifetime. Type checking. Analysis of basic and compound data types. Arithmetic and logical statements, assigning. Control structures. Usage and implementation of functions, parameter passing methods. Data abstraction. Object oriented, functional and logic programming languages.

**COM252 File Organization (3-2) 4 6**

File concept, hard disk structure in modern computers and physical meaning of saving a file on the disk. File types and operations: unordered files, ordered files, indexed ordered files: ISAM and B+-tree structures. Direct access files, hashing functions. Time analysis of file operations.

**COM234 Electronics I (3-2) 4 6**

Semiconductor diode structures and their characteristics, diode circuits. Structures of transistors, biasing in transistor circuits and transistor amplifiers. Introduction to digital compound circuits. Basic logic gates and memory gates.

**BLM256 Data Communication (3-0) 3 5**

Introduction to communication. Protocols. Modem, multiplexer. Transformation of communication rules, serial and parallel data input/output interfaces, data line communication rules, data flow control, processing units used for communication.

**STA250 Probability and Statistics (3-0) 3 4**

Probability concept and basic theorems. Independency, conditional probability and Bayes’ rule. Random variables and functions. Some important discrete and continuous distributions. Distribution of random variable functions. Statistics. Unit, mass, data analysis. Sampling and sampling methods.

**ENS220 Business Management (3-0) 3 4**

Rules of management, planning, organization and control. Management applications in engineering, production, finance and staff

**BLM343 Object Oriented Programming (3-2) 4 7**

Introduction to object oriented programming. Classes and definitions, methods and inheritance. Information hiding. Operator overloading. Project development using object oriented languages like C++, JAVA and Smalltalk.

**BLM367 Advanced Data Structures (3-2) 4 7**

Time and space analysis of algorithms. Inheritance and abstract classes. Advanced nonlinear structures: heap, AVL trees, tree iterators, graphs and applications. Collection organizing techniques. Sorting and merging algorithms. Graph theory and graph algorithms. Greedy algorithms.

**COM325 Microprocessors (3-2) 4 7**

Systems based on microprocessors and their design, software and hardware design integration. Memories, input/output elements, interrupts and priorities. Daisy chaining type of processors. Lines, connections, timing, usage of logic state analyzers. Control programming, permanent programs in the memory and programming. Synchronous multi-tasking usage and system design.

**BLM331 Electronics II (3-2) 4 7**

Biasing in transistor circuits and transistor amplifiers. Digital compound circuits, multistage amplifiers. control theory, feedback theory, noise theory, balance theory

**COM376 Computer Architecture (3-2) 4 7**

Computer management and design, tasks, decoding and execution, CPU control and programming. Microprogramming. ALU and its mechanism. Data input, bus structures, pipelined data processing. Memory control and addressing techniques.

**BLM334 Operating Systems (3-2) 4 6**

Introduction to operating systems: usage areas, functions and properties. Resource allocation, work and resource organization. Giving precedence to processes. Memory management. Interrupts and their control. Internal communication, control of peripherals.

**BLM336 Signals and Systems (3-0) 3 5 **

Definitions of signals and systems. Linear and time independent systems. Fourier demonstration of periodic signals. Continuous and discrete signals. Sampling theorem. Basic principles of communication systems

**COM352 Database Management (3-2) 4 6 **

Introduction to database management. Data storing methods and data organization. Hierarchical data modeling and schemas. E-R diagrams. Relational algebra and database processing languages(SQL, Quel etc). Synchronous tasks and their design. Logical database design. Object oriented and fuzzy logic databases.

**BLM364 Automata Theory (3-2) 4 6 **

Automata and formal languages, finite state machines. formal languages and push down automata. Context free languages and grammars. Normal structured grammars. Instability and insolvability. Turing machines and their usage in problem solving.

**COM491 Research Techniques I (2-2) 3 6 **

Doing project studies and preparing project reports oriented towards independent research and application under the supervision of an academic member. Semester-wide graduation projects can be independent or can be followed by successive studies. These courses can be registered during the last two semesters.

**BLM431 Computer Networks(3-2) 4 7 **

Seven layered ISO-OSI model, middle layer operations, ALOHA and LAN protocols. IEEE 802.2 and Ethernet. Data connection, error checking and correcting protocols. Network layers, transfer layers. Internet, internal structure, Internet tools. Network planning, Ethernet and alternatives. WAN protocols.

**BLM433 Numerical Analyze Methods(3-0) 3 7 **

Approximate calculation and error concept. Solution of nonlinear equations. Approximate root finding methods: sequential repeating method, sloping method, Newton-Raphson method, Bairstow method. Numeric integration methods. Finite differences. Numeric derivatives. Euler method, Taylor method…

**COM492 Research Techniques II (2-2) 3 6 **

Doing project studies and preparing project reports oriented towards independent research and application under the supervision of an academic member. Semester-wide graduation projects can be independent or can be followed by successive studies. These courses can be registered during the last two semesters.

**COM438 Computer Graphics (3-2) 4 7 **

Graphics techniques, deformation, shading, surface mapping, scanning, color, animation, motion, GUI design.

**BLM468 Software Engineering (3-0) 3 7 **

Problem solution concepts. Software systems, data modeling, installation structures, user interfaces, continuous systems, applications.

**Technical Elective** Courses

**COM417 Robotics(3-0-0) 3 5 **

Robot hardware architecture. Industrial robots, optic coding, digital servo, speed, acceleration, precision, system design, systems with microprocessors, logic analysis, system communication, sensor systems, interfaces

**COM419 Remote Sensing (3-0) 3 5 **

Electromagnetic Radiation , Photographic Sensors, Digital Data, Image interpretation, Thermal Radiation, Image Resolution, Remote Sensing and Geographic Information Systems.

**COM429 Information Technologies Management (3-0) 3 5 **

Understanding the software, hardware, database and communication structures of computer systems used in business world, important information systems concept used in business world, operating systems, decision support systems, enterprise resource planning, management information systems, expert systems, the project life cycle, feasibility, analysis, design, implementation, maintenance stages will be examined in this course.

**BLM441 Algorithms (3-0) 3 5 **

Basic concepts. Complexity of the algorithm. Upper and lower bound theorem. Divide and conquer. Greedy approximations. Dynamic programming. Backtracking. Branch-and-bound. NP-complete and NP-hard problems. Complexity. Calculation of classical calculation algorithms.

**BLM445 Information Systems(3-0) 3 5 **

Basic concepts: data, information, system, planning, control. Design, application and management of information systems.

**BLM449 Parallel Data Processing (3-0) 3 5 **

Flynn classification. Organization of data and parallel storage properties of parallel computers. Introduction to parallel programming. Parallelism and data processing. Parallel algorithms: synchronization, communication and critical points. Problems involving parallelism and applications. Parallel programming languages.

**COM451 Artificial Intelligence (3-0) 3 5 **

Introduction, Turing test. Problem solving and scanning technologies. Games. Data demonstration. Expert systems and rule chaining. Image recognition . Natural language processing. Machine cycle. Neural Networks.

**COM457 Advanced Microprocessors(3-0) 3 5
**Machine Organization and Programming, Assembly Language Programming, Introduction to Branching, Extended Arithmetic on the MC68000, High-Level Language Tun-Tine Environment, Communication Interface Programming, Exception Processing, Peripheral Device Interrupts, Advanced M68000 System Topics

**BLM467 Knowledge Engineering and Management (3-0) 3 5
**Methods and techniques for transforming data into information and knowledge primarily for capturing, retaining, and disseminating individual and organization knowledge. Basic concepts and techniques of reasoning and knowledge representation. Drawing inferences. Tools and languages for expert systems. Knowledge acquisition and synthesis. Organizational memory. Development and applications of knowledge engineering and expert systems. Case-based reasoning.

**COM469 Neural Networks (3-0) 3 5 **

Virtual neural systems, singly layered preceptors . Dependent memories, compatible and self organizing networks, neural algorithm applications, usage of neural networks.

**COM471 Embedded System Programming (3-0) 3 5 **

General information about embedded systems, Spelling rules of Verilog hardware description language, Gate-level design with structural modeling, Design with data-flow modeling, Design with behavioral modeling, Synthesizing and Simulation, Design with Finite State Machines, Processor Design (datapath and control unit), Peripherals interface design (VGA, PS/2 mouse and PS/2 keyboard, memory)

**BLM485 Web Based Technologies and Applications (3-0) 3 5 **

Basic concepts. Internet. Client/server technology. Internet information systems: FTP, Gopher, telnet and World Wide Web. Web browsers and servers. HTML, Perl, CGI, JavaScript, VBScript, JAVA, ActiveX, Plug-ins. Security in web based commercial applications.

**BLM428 Advanced Computer Networks (3-0) 3 5
**Layered Network Architecture: Reference Model. Service access points and interfaces. Connection-oriented and connectionless services. Routing: Optimality principle, shortest path algorithms. Flooding. Distance vector and link state algorithms. Flow and congestion control : Flow control by credit and threshold. Traffic shaping. Congestion avoidance. Internetworking: Bridges, routers, tunneling. Routing in Internet: Internet Protocols IPv4 and IPv6, Open Shortest Path First routing, Border Gateway Protocol. Service Quality Enhancement: Multiprotocol Label Switching. Integrated Services. Resource Reservation Protocol. Differentiated Services. Multicast Routing. End to end transport: Transport services. Connection management and flow control. Transmission Control Protocol. Real time transport protocol. Multimedia session control protocol,

**BLM434 Advanced Operating Systems (3-0) 3 5 **

Synchronous programming, multitasking, critical region, semaphore and recognition, Locking. Unix, and its internal structure

**BLM436 Fuzzy Logic(3-0) 3 5
**Fuzzy set theory, fuzzy logic, possibility theory, and approximate reasoning. Fundamental knowledge in the intelligent computing methods and application of various engineering problem: control systems, pattern recognition, data compression, expert systems, etc. These methods are widely used in system planning, quality and technology transfer, knowledge based systems in real-time applications, control systems, forecasting and so on.

**BLM444 Special Topics (3-0) 3 5
**Special topics in computer engineering. The content of the course depends on the recent technological or theoretical developments in computer engineering.

**BLM448 Pattern Recognition (3-0) 3 5 **

Recognition of one, two and more dimensional objects. Statistical and grammar based approximations. Examining application areas. Bayes Deciding Theorem. Deciding limitations, classifiers and separating functions. Predicting the parameters. Clustering. Property choice. Structural approximations to shape recognition. Picture grammars and languages. Artificial approximations. Neural networks. Speech recognition. ** **

**COM466 Digital Image Processing (3-0) 3 5 **

Image processing. Discrete time signals and systems. Sampling, recreation and rescaling. Digital image demonstration. Basic concepts. Fourier transformation. Image transformations Image development and restoring. Segmentation and description.

**COM470 Embedded System Design (3-0) 3 5
**This course will introduce the issues associated with designing, testing, integrating, and implementing microcontroller/microprocessor-based embedded systems. Topics include embedded hardware, hardware components and synthesis tools; embedded processors; board memory, interfaces, and buses; embedded software, device drivers, and embedded operating systems; design and development of hardware/software co-design based embedded systems.

**BLM476 Expert Systems (3-0) 3 5 **

Context and techniques of expert systems, tools and programming languages. Design of expert systems, data gain, applications in daily life

**COM484 Microprocessor Interfaces (3-0) 3 5 **

Microprocessor output, I/O interfaces, coding and programming data loading circuits, SDRAM, DRAM I/O bus systems. PPI systems

**BLM486 Web Based Parallel Distributed Systems (3-0) 3 5 **

Classification of parallel computers and programming types. Parallel programming. Message passing and shared memory approximations. Review of distributed calculation: Synchronization, reliability, error correction. Relations of JAVA with parallel and distributed calculation. Java Remote Method Invocation, CORBA, DCE.

**COM494 Parallel Programming (3-0) 3 5 **

Development of computerized calculation techniques, Flynn grouping, The concept of symmetric multi-processor programming, OpenMP library, Distributed architecture structures and message passing libraries, Using MPI library.

**BLM496 Computer Simulation and Modeling(3-0) 3 5 **

Definition, design of the solution, analysis and error detection of the problem. Analysis of possible solutions to the problem. Mathematical modeling of the problem. Certain and approximate solution concepts. Analysis of sample models. Applications.

**COM498 CISCO (3-0) 3 5 **

Network fundamentals, Routing Protocols and Concepts, LAN Switching and Wireless, Accessing the WAN