
Clarion University: www.clarion.edu CIS Department: cis.clarion.edu Chair: Susan Traynor Secretary: Nancy Harriger 130 Becker Hall (campus map)
Phone: 814.393.2442 Fax: 814.393.2186
In the Information Age, information is a key component of our economy.
Why computers?
Staggering growth in the volume of information
Speed at which that information must be manipulated
Example: intelligence
Programming / Software Engineering is a very lucrative career.
Money
Demand
Perks
Satisfaction
Creativity
Freedom
Government Projections: BLS
Why are there so few majors and even fewer graduates??
Building software is HARD!!
---------------------------------------------------------------------------
"Software is hard," reads the quote that opens Rosenberg's Dreaming in Code.
Why is software in a never-ending state of crisis?
Why do most projects end up horribly over-budget or cancelled or both?
Why can't we ship code without bugs?
Why, everyone asks, can't we build software the same way we build bridges?
---------------------------------------------------------------------------
"There are very few success stories," said a former deputy
chief information officer at the Pentagon. "Failures are very
common, and they've been common for a long time."
---------------------------------------------------------------------------
The IRS sought $388 million last year for its $1.7 billion "Business
System Modernization" program, which is over budget and 15 months late.
---------------------------------------------------------------------------
The FAA has doubled its cost estimates to $1.69 billion for
its "Standard Terminal Automation Replacement System" since 1996.
---------------------------------------------------------------------------
"Ever since there's been IT (information technology), there
have been problems," said a Washington bureau chief. This is difficult."
CIS is a department that offers two majors: (There is no "CIS major". )
CS : BSCS (Computer Science)
IS : BSIS (Information Systems)
Students graduate from our programs with a solid education and get very good
jobs with such outstanding employers as Raytheon, E-Systems, Lockheed Martin,
IBM, Mellon Bank, America Online and EDS.
Many students prefer to work for smaller companies, school districts,
local governments and state governments.
CS Major
Computer Science (CS): B.S. , 58 credits
Required:
CIS 163 Intro to Programming & Algorithms I (C++)
CIS 244 Intro to Programming & Algorithms II (C++)
CIS 253 Computer Org and Assembly Language
CIS 254 Data Structures
CIS 306 Object-Oriented Programming (Java)
CIS 350 Computer Architecture
CIS 355 Operating Systems
CIS 356 Algorithm Analysis
CIS 375 Software Engineering
CIS 411 Systems Development Project
CIS 460 Prog Languages & Theory of Computation
MATH 140, 270, ECON 221, PHIL 311
12 credits of electives in CIS courses 300-level or above.
Information Systems (IS): B.S., 63 credits Required: CIS 110 Intro to Computer Info Systems CIS 202 Event-Driven programming (VB) CIS 206 Intro to Java Programming (Java) CIS 217 Applications of Microcomputers CIS 301 Systems Analysis CIS 303 Local Area Networks CIS 317 Microcomputer Maintenance CIS 330 Advance Event-Driven Programming (VB) CIS 402 Data Base CIS 403 Data Communications CIS 411 Systems Development Project MATH 131, 232 ECON 211, 212, 221; ACTG 251, 252; FIN 370, MGMT 320, MKTG 360 Nine credits of electives in CIS courses 300-level or above.

TITLE Add and Subtract, Version 2 (AddSub2.asm) ; This program adds and subtracts 32-bit integers ; and stores the sum in a variable. Last update: 2/1/02 INCLUDE Irvine32.inc .data val1 dword 10000h ;4 bytes of storage initialized val2 dword 40000h val3 dword 20000h finalVal dword ? .code main PROC mov eax, val1 ; start with 10000h add eax, val2 ; add 40000h sub eax, val3 ; subtract 20000h mov finalVal, eax ; store the result (30000h) call DumpRegs ; display the registers exit main ENDP END main ========================================================= Why Assembly? Applications Device drivers, Games, Embedded apps Speed up apps (ex: write directly to I/O port vs. system call) Understanding Understand program translation & execution Understand HW Understand SW / HW interaction Understand high level programming / debug Sophistication Real computer scientist See under the covers
note 8/24/07 (iphone cracked): ... Here how the bootrom check works; it reads from 0xA0000030 0xA000A5A0 0xA0015C58 0xA0017370 and all these addresses must read as blank, or 0xFFFFFFFF. When you erase flash, it becoms 0xFFFFFFFF. But you can't erase those locations, because they are in the bootloader. So thats where the testpoint comes in. Pulling A17 high hardware OR's the address bus with 0x00040000(offset one because data bus is 16 bit) So the bootrom instead checks locations 0xA0040030 0xA004A5A0 0xA0045C58 0xA0047370, which are in the main firmware and can be erased. Pretty genius :) =================================== =================================== so WE should see that address 0xA000A5A0 becomes 0xA004A5A0...