Saturday, August 30, 2003

Computer architecture

A+ Guide to Managing and maintaining Your PC - Forth Ediition, Andrews, Jean

Chapter2 - How Hardware and Software Work Together


  1. Hardware and Software Interaction: An Overview
    1. Hardware is like an automobile, it is useless with out somone behind the wheel
    2. Software is like the Chauffeur who takes instructions from another source and tells the hardware what to do
    3. The software has different levels
      1. Application software - various programs that people use
      2. Operating system - Works with the applications software on one side and the hardware on the other side
      3. Various OS have been available over the years and currently
        1. DOS - first OS for IBM/Compatable computers
          1. Wrtitten for Early PCs - verry limited
          2. Even though Win 3.x appeared to be an OS it was not, it was a shell for DOS
        2. Windows 9X (95, 98, ME)
          1. True OS but had DOS core for compatability
          2. Popular with home and business users alike
        3. Windows NT, 2000, XP
          1. Break from DOS compatabilites.
          2. In general come in Server and Client (sometimes called PRO) versions
        4. Unix - OS for networks and Internet use
        5. Linux - scalled down linux - open source
        6. OS/2 - IBM attempt at GUI
        7. MAC OS - For Macintosh computes
  2. System Resources
    1. The 8-bit and 16-bit ISA Slots
      1. The bus that was used on the first PC systems was called the ISA
      2. It used an 8 bit data bus
      3. Other lines are used for voltages, addresses, interupt requests, and other stuff
      4. Later a 16 bit slot was created and called Extended Industry Standard Archtecture (EISA)
      5. ISA slots, though still used, are slower than other I/O slots
      6. The cards themselves usually had jumpers or switches on them to determine what IRQ and addresses used.
    2. Interrurpt Request Numbers (IRQ)
      1. When a piece of euqipment needs to do something it places a voltage on its interupt request line (IRQ) to flag that it needs attention
      2. Each device gets its own IRQ number and this is how the computer is able to tell which device needs attention.
      3. IRQ 0 (system timer) and IRQ 1 (Keyboard) are not available for other devices
      4. This left 2 through 7 for other things, but they had specific things that they were assigned to
      5. IQO 2 had been reserved for a connection to mainframes by IBM
      6. With only 5 IRQs free we need a new way to connect more than 5 devices, especially with the EISA
      7. The plan was to use IRQ 2 to signal to another controller but other uses had been created for it by some manufacturers.
      8. A New IRQ (9) was created and tied to IRQ2 so that both could be used.
      9. To see how your IRQs are assigned you can use MSD in DOS or Device Manager with WIn 9x and above
      10. Another way to service the needs of the computer components, is to do polling
      11. With polling software is always running to check on various devices attached to the equipment
    3. Memory Addresses
      1. The way that memory is accsed is by addresses that get assigned when the operating system loads
      2. The CPU uses an address bus to communicate the memory location that it needs to reference.
      3. Because only 20 address lines were available in original computers that limited memory to 1,024KBytes of memory (1 Meg)
      4. DOS used only the first 640 K of that 1 Meg. The rest of that memory was reserved for devices. All that was above 1 MEG became extended memory that could only be used under special circumstances
      5. Windows does not break this memory up, all memory is available to the Operating System and the Programs. Windows 9x does have some memory fall backs to DOS though
      6. Shadowing ROM
        1. Sometimes ROM BIOS will be copied into RAM memory because it can be accessed faster
        2. Access will be the same either way. Just faster this way
    4. I/O Addresses
      1. Another way of addressing devices is by the I/O addresses assgined to them.
      2. The address match one for one the same lines as the IRQ numbers
    5. DMA Channels
      1. Direct Memory Access is used to bypass information from having to go to the CPU first
      2. 0, 1, 2, and 3 are used for 8 bit, 4, 5, 6, and 7 are used as well for 16 bit.
      3. Not all devices would be using this. Disk drives are a common use.
  3. How an OS relates to Other Software
    1. Real (16 Bit) and Protected (32-Bit) Operating Modes
      1. Real Mode assumes that there is only one program running at a time. This is called single tasking.
      2. Because of this applications are given direct access to the memory
      3. In Protected Mode more than one program can run at a time. This is called multitasking.
      4. Each program will be assigned its range of memory to be used. Hence it is protected from other aplications
      5. In protected mode virtual memory (Hard Drive space being used as RAM) can be accessed by the Operating System
      6. Computers start in real mode and must be made to switch to protected mode.
      7. In protected mode time is given to one task and then jumps to another task, stoping the first task temporarily. This is called preemptive multitasking.
      8. How an OS Uses Real and Protected Modes
        1. Programs must be written to run in real or protected mode. Some are even written to be aware that they are in protected and run sort of as a hybrid.
        2. Windows 3.x was not an operating system as such but an operating enviornment. It provides support to the applications.
        3. 16-Bit and 32-Bit Software
          1. Software written for WIndows 3.x is 16-bit software
          2. It is designed to be watching other applications and not infringe on them.
          3. Windows 9x is a hybrid, designed to use both of them
          4. Windows NT and above are strictly 32-bit software
    2. How an Os Uses BIOS and Device Drivers
      1. How an OS Uses System BIOS
        1. System BIOS contains information about how to run simple hardware common to all equipment
        2. Things like keyboard, hard drive, floppy drives
        3. BIOS is configured from the set up program that can be accessed when the computer starts
      2. How Device Drivers Control Hardware
        1. Hardware uses special software (device drivers) to make it available to the operating system
        2. These are special written for the operating system and the hardware
        3. Device Drivers Under Windows 9x
          1. Windows 9x is designed to use 32 bit drivers whenever available
          2. To provide backward compatability to DOS Windows 3.x 16-bit drivers can be loaded in config.sys, autoexec.bat and system.ini
          3. Windows 9x keeps information about 32 bit drivers in the registry
          4. Whenever posible you should try to use the most recent drivers to patch problem that may have come up earlier
          5. Running 16-bit drivers under 9x can cause the system to run slow (as well as other problems)
          6. Look for 16-bit drivers to be loaded from the three files mentioned above as well as seeing them as problems indicated in Device Manger
        4. Device Drivers Under Windows 2000
          1. 2000/xp will load 16 bit mode drivers but there is no guarentee that they will work.
          2. Always check the Hardware Compatability List (HCL) to verify if drivers are designed for your OS
  4. How an OS launches an aplication
    1. Loading Application Software Using the Windows Desktop
      1. When installed Windows offers several ways for software to be run
        1. From a shortcut on the desktop
        2. From the start menu choose programs and the look for the installed program shortcut
        3. From the RUN command and enter the command line to start it
        4. Find the program in My COmputer or Windows Explorer and run it from there.
  5. Chapter Summery
  6. Key Terms
  7. Review Questions
  8. Hands-on Projects

Thursday, August 28, 2003

Computer architecture

Computer Systems 2nd Edition, Warford, J. Stanley

Chapter 3 Notes

Read chapter 3 sections 1 - 2 - Instruction Set Architecture - Information Representation
  1. Unsigned Binary Representation
    1. Binary Storage
      1. Computers can not store numbers and letters directly
      2. They must be broken down into states the computer can understand
      3. Computers store information in a location as either an on or an off state
      4. These units are called binary digits or bits
      5. These bits combined together are called cells. Cells can be of various sizes. Most computers use 8.
      6. The 1s and 0s used to represent various characters are called a code
    2. Integers
      1. Numbers must be stored in binary form
        1. Unsigned - always positive
        2. signed - either way
      2. Review of our system - base 10
        1. Our system developed because of our ten fingers
        2. When we get to a certain point, 10 numbers in (0 to 9), we start the counting again with 0 and put a 1 in the next column.
        3. This repeats each time we reach a 9
      3. What if we only had 8 fingers instead of 10
        1. At 7 we would put a 0 in and add 1 to the next column
        2. This would repeat every time we reached 7
      4. This same pattern works if we only have 2 fingers only our numbers are 0 and 1
    3. Base Conversion
      1. simplest way to convert the numbers is just to count up but that only works for small numbers
      2. Just like base 10 goes from 1s to 10s to 100s to 1000s we can do the same with the 2s system
      3. Our numbers in this case would be 1s 2s 4s 8s 16s 32s etc. (in decimal of course)
      4. By adding the decimal numbers together for the places where the 1s are we will get the decimal number.
      5. To convert the other direction binary to decimal, follow these steps
        1. Divide the number by 2 and write down the remainder (it will be 1 or 0)
        2. Take the value of the answer and divide it by 2 again and again save the remainder
        3. When you get a 0 for an answer take that remainder and make it the first number in your string of numbers. Follow this by the other 1s and 0's till you get to the first one. this is your answer.
    4. Range for Unsigned Integers
      1. In real life we have an infinite storage system for numbers so they can get as large as the need to
      2. In computers we are limited to the size of the cells that we are using. And the amount of memory we have.
      3. Because of this the smallest number we can do in an unsigned number is all 0s and the largest is all 1s.
    5. Unsigned Addition
      1. Rules for addition in binary is the same as in decimal - reach the limit put a 0 down and a 1 in the next column
      2. What happens when we reach the limit of the cells?
    6. The Carry Bit
      1. When we wind up reaching the limit the cells can hold, then the carry bit comes into place.
      2. A carry bit will be a cell that tells the computer that we have gone over the limit of what the cell can hold.
      3. In subtraction it also lets us know that we have gone lower than we can go (i.e. 0)(It basically is a borrow bit)
  2. twos Compliment Binary Representation
    1. This system will only work for non negative numbers
      1. All we have is 1s and 0s to represent a number
      2. This means a 1 or a 0 will have to represent the fact the number is negative in a cell
      3. In most cases it is the highest order cell (the highest number)
      4. We can now represent the rest of the cells as a number (a smaller number though as we have less cells to work with)
      5. Problems add up if we try to use the same representation for a negative and a positive number
        1. If I add a +5 and a -5 I get 0
        2. If I add a 00 0101 (pos 5)and a 10 0101 (negative 5) we get

          00 0101
          10 0101
          ----------
          10 1010
          which does not represent 0 but -9
        3. In stead we need a way to add them together to get 0
        4. In this case what can I add to binary 5 to make it 0, that will be binary -5
        5. Our answer winds up being 11 1011 but how do we get that number?
        6. For that process we use the twos Compliment
          1. First invert the number to get the 1's compliment
          2. Then add a 1 to the result
    2. twos compliment range
      1. Because of the use of the 1st cell something unexpected happens
        1. Like before we have a range of 16 numbers (unsigned 0 to 15)
        2. If we only have 3 numbers to work with we should have 0 to 7 positive and negative
        3. In reality we go to -8 (1000)
        4. This makes the range -8 to +7
      2. This happens no matter how many cells we wind up using
    3. Base Conversion
      1. Conversion of negative decimal to negative binary
        1. Take the positive value of it
        2. Do a 1s compliment of it by putting 0 where 1s are and 1 where 0s are
        3. Add 1 to the result
      2. Converting binary to a decimal
        1. Start with the sign bit
          1. Positive - covert as normal
          2. Negative - one of two methods
              1. first method
                1. make number positive by negating it
                2. convert it to decimal as in unsigned representation
              2. 2nd method
                1. Where the 0s are add up those place holders
                2. Add 1
          3. The Number Line
          4. The Overflow Bit
            1. When numbers are added the carry bit represents if the number is out of range
            2. It will store the wrong information and then go on after that.
            3. If we are using 2s Compliment than the carry bit does not really represent if a number is in or out of range.
            4. We introduce a overflow bit (represented by v)
            5. when numbers are added if it senses overflow it sets the bit, otherwise it is left as 0

Wednesday, August 27, 2003

ENGL-2333RTechnical Writing I

Guide to College Writing - 4th Edition, Dial-Driver, Emily

Pages 5 - 58

Writing Process

  1. Pre-Writing
    1.  Free-Writing
      1. Let ideas flow from brain to paper on a subject, if you cannot think of anything write you cannot think of anything
      2. Give self time limit
      3. Pick out meaty topics from what you wrote
      4. If necessary repeat process with meaty topic
    2. Brainstorming
      1. Make a list of ideas that occur to you on a subject
      2. words or phrases
      3. self or group
      4. Repeat to narrow down topic
    3. Mapping
      1. Similar to brainstorming
      2. Center of paper has topic
      3. from there connect it to subtopics
      4. Subtopics can be broken to smaller topics
      5. Repeat till you have exhausted topic
    4. Journalists' Questions
      1. Who
      2. What
      3. When
      4. Where
      5. How
      6. Why
    5. Reading for Writing
      1. Read to critically learn about the subject
      2. Not all assignments will let you do this
  2. Planning
    1. Writing for a Purpose
      1. Inform
      2. Explain
      3. Persuade
      4. Entertain
      5. Explore
      6. Some writing will combine these
      7. Mostly you will write to inform (as a college student)
    2. Writing for an Audience
      1. How much does the audience know about your subject
      2. What vocabulary should you use
      3. What preconceptions do you have to work against
  3. Organization
    1. The College Essay
      1. An essay is brief
      2. Essay is non-fiction
      3. An essay makes a point
      4. An essay is meant to be engaging
      1. Formal Essay Organization
        1. There are various types
        2. Easiest is the three-section essay
          1. Introduction
            1. Get readers attention
            2. Move from general topic to specific topic
          2. Body
            1. Each paragraph will have a topic sentence
            2. Develop that topic in paragraph
          3. Conclusion
            1. Unify theme
            2. summarize main points
      2. Writing Hints
        1. Plan
        2. Choose an audience and write to that audience
      3. Stylistic Hints
        1. underline names of Books and TV shows. Titles of TV shows, titles of short stories, poems etc. Should be in quotation marks
        2. Avoid the use of the word you
        3. Do not use contractions
        4. Do not use "This paper will show..." or similar terms
        5. Do not use there at beginning of sentence. Do not use it as subject of sentence
        6. Avoid absolutes (Everyone, always, etc.)
        7. Use great care in the mechanics of writing (spelling, punctuation, etc.)
        8. Use active voice
        9. Use present tense consistently
        10. Do not refer to people by first name , last name only, and avoid Mr., Mrs. and other titles of honor
      4. The Organizing Page - helps you organize your thoughts
        1. Step 1 General Topic - What is your topic
        2. Step 2 Restricted Topic - Parameters of assignment
          1. Audience
          2. Purpose
          3. time
          4. length
        3. Step 3 Subject Segments - two or three thoughts that will become paragraphs
        4. Step 4Title - Develop a working title
        5. Step 5 Thesis Statement - Expresses the main idea of the essay
        6. Step 6 Topic Sentences - develop main topic sentences that will your paragraph topics
      5. Outlines
    2.  
    3. Paragraphs
      1. Development
        1. Topic sentence is usually first sentence in paragraph
        2. Sentences after this should support the main sentence
        3. There should be at least two supporting points.
      2. Coherence and Unity
        1. Unity - all the sentences work together as a whole
        2. Coherence - consistency and logical progression
          1. Types of organization
            1. Spatial order
            2. Work through a pattern (like a house)
            3. Start at one location and go to the next, not jump around from one to the other
            4. Chronological Order - order things in the order that they happen
            5. Order of importance - arrange things in the order of importance from most to least
    4. Patterns of Development for Paragraphs and Essays
      1. Narration - telling a story
      2. Description - describe sensory experiences or describe a person or persons
      3. Example - one long or a series of short samples of information
      4. Definition -
        1. Explain what a word or phrase means
        2. form is: Word = general class + differentiating characteristics (Discophile is a collector of records)
        3. Kind of example development
      5. Process - tells us to do something - series of steps
        1. Remember the audience
        2. Introduce the subject early in the paragraph
        3. Tell all the steps
        4. Tell all the steps in order
        5. In this type of essay you may use the word "you"
      6. Comparison (and Contrast)
        1. Contrast - to emphasize differences
        2. Compare - delineate their similarities and differences
        3. Patterns that can be done
          1. Grouping by similarity and difference
          2. Grouping by subject
          3. Grouping by point
      7. Analogy - comparison between things that are not usually consider similar
      8. Division and Classification - Division divides things, classification groups things
      9. Analysis/Cause and Effect - begin with fact and goes backwards to find out what happened.
      10. Argumentation/Persuation - attempt to persuade the reader to your view
  4. Revision - review or have someone review and then you revise according to:
    1. Essay Organization
    2. Introductory Section - clear and leads to Thesis statement
    3. Thesis Statement - clear and specific
    4. Body Paragraphs - each paragraph is clear and fully developed. Remove what does not support.
    5. Conclusion - does not introduce new material
    6. Editing - Checking spelling, sentence structure, grammar, usage and punctuation
  5. Manuscript preparation - Follow example in the book for spacing (p. 58)

ENGL-2333RTechnical Writing I


Technical Communications - Ninth Edition, Lannon, John M.


Chapter 4 - Making a Persuasive Case


Reading was for Chapter 3 and 4 and this is Chapter 4
In our discussions we will use argument to mean "process of careful reasoning in support of a claim" not "a quarrel or dispute".
  1. Identify Your Specific Goal
    1. Arguing to Influence People's Opinions
    2. Arguing to Enlist People's Support
    3. Presenting a Proposal
      1. Spell out the problem in enough detail to convince readers of its importance
      2. Point out the benefits of solving the problem
      3. Offer a realistic, cost-effetive solution
      4. Address anticipated objections to your plan
      5. Give reasons why your readers should be the one to act.
    4. Arguing to Change People's Behavior
  2. Assess the Political Realities
  3. Expect Audience Resistance
    1. For people to admit you are right they may have to admit they were wrong.
    2. There are three ways people may respond
      1. Compliance - I will do it cause you are making me
      2. Identification - I like you and you make sense, I believe that you could be ok
      3. Internalization - What you say makes sense fits my goals and values
  4. Know How to Connect with the Audience
    1. Power connection - Do it cause I am telling you to do it.
    2. Relationship Connection - Do it, I am inviting you to, it would be nice if you could.
    3. Rational Connection - Here are some pros, you may have some cons, lets talk about them.
  5. Allow For Give and Take
  6. Ask for a Specific Response
  7. Never Ask for Too Much
  8. Recognize All Communication Constraints
    1. Organizational Constraints
      1. There are unwritten rules in all organizations
      2. Be careful when you cross the lines that you should not
    2. Legal Constraints
    3. Ethical Constrains
    4. Time Constraints
    5. Social and Psycholigical Constraints
      1. What is your relationship with the audience? Are they subordinates or senior level
      2. What is the audience personality? - (Self esteem, assetivenes, open/closed mindness, etc.) - The less persuadable, the more you must work
      3. Audience sense of identity/affiliation - address the groups collective concerns
      4. Preceived size/urgency of group.
  9. In Brief: The Psycholgy of Persuassive Appeals
    1. Why we say no
      1. Fear of unknown
      2. Fear of disruption
      3. Fear of failure
    2. Why we say yes
      1. Reciprocation
      2. Consistency
      3. Social Validations
      4. Liking
      5. Authority
      6. Scarcity
    3. Cross-Cultural Differences
      1. Asked for help American will give it if they feel they owe a favor
      2. Chinese influenced by status or authority
      3. Spanish based on friendship
      4. Germans followed rules
      5. These are generalized statement
  10. Support Your Claims Convincingly
    1. Offer Convincing Evidence
      1. Evidence has quality
      2. The sources are credible
      3. Evidence is concidered reasonable
      4. Common evidence includes factural statements, statistics, and expert testimony
    2. Appeal to Common Goals and Values
  11. Concider the Cultural Context
    1. Make sure that you take into concideration your audiences cultural makeup
    2. Above all else, allow people to save face
  12. Shape Your Arguments
  13. Guidelines For Making Your Case
  14. Checklist For Cross Cultural Documents
  15. Exercises
  16. Collaborative Projects
  17. Service-Learning Project

Tuesday, August 26, 2003

ENGL-2333RTechnical Writing I

Technical Communications - Ninth Edition, Lannon, John M.

Chapter 3 Delivering the Essential Information

Homework is to read Chapters 3 and 4, These notes are on Chapter 3
  1. Address the audiences Information needs
    1. Each audience is unique
    2. You need to learn to write to the audience that you intend to reach
  2. Identify Levels of Technology
    1. The Highly Technical Document
      1. At this level the user does not need things handed to him on a silver platter.
      2. He is knowledgeable about the subject and needs to know information with out explanations
    2. The Semitechnical Document
      1. Though not as knowledgeable as the Technical User, still has some knowledge of subject
      2. Provides the information with suggestions that person might not know (i.e. normal ranges for the findings compared to what was found.
    3. The Nontechnical Document
      1. Layperson's level
      2. Specifics are removed and general findings are put in its place
      3. Most everything is spelled out to the reader
    4. Primary and Secondary Audience
      1. Primary user is one who requested the document to use for decision making
      2. Secondary Audience - those that will carry out the project
      3. If short memo rewrite it at various levels to reach all
      4. Longer than 2 pages, address primary user and provide supplements for the secondary user
    5. Web Based Documents for Multiple Audiences
      1. Web sites allow for multiple audiences easily
      2. Different users can follow the links to the technical information that they need.
  3. Develop an Audience and Use Profile
    1. Audience Characteristics
      1. Identify all that you can about the person who will be reading this (Name, title, nationality, etc...)
      2. Identify others this document will affect
    2. Purpose of a Document
      1. Why do people want this document and what do they expect (raw data v. recommendations)
      2. What will happen to the document after it is used.
    3. Audience's Technical Background
      1. Co-workers will not need it spelled out
      2. Manager's and subordinates may need more explanation
      3. Management may need it broken down the most.
    4. Audience's Cultural Background
      1. If audience is a different culture make sure to take that into account
      2. Especially avoid slang terms that would not translate outside of the American Culture
    5. Audience's Knowledge of the Subject
      1. People expect useful information in a document
      2. They will have it if your document contains one of the following:
        1. shares something new and significant
        2. Reminds us about something we know but ignore
        3. offers fresh insight or perspective on something we already know
    6. Appropriate Details, Format, and Design
      1. Were you asked to be comprehensive or keep it short
      2. Do they want recommendations or conclusions
      3. What did they request
        1. report
        2. letter
        3. memo
        4. etc.
    7. Due Date and Timing
      1. What is your deadline if you have one
      2. Ask for people to review an early draft if possible.
  4. In Brief: Human Factors in Communication Failure
    1. Neglecting to Convey Vital Information
    2. Not being assertive enough about vital information
    3. Conveying the wrong information
    4. Underestimating Vital Information
    5. Overlooking Vital Mistakes
  5. Exercises
  6. Collaborative Project
  7. Service-Learning Project

Monday, August 25, 2003

Computer architecture


Computer Systems 2nd Edition, Warford, J. Stanley


Chapter 2 Notes


Read chapter 2 sections 1 - 3 - C++
  1. Variables
    1. The C++ Compiler
      1. Write the program (source) using a text editor
      2. Invoke the compiler to translate to machine language
      3. Execute the object program
      4. Some compilers will combine some of these steps.
      5. Source file is a text file
      6. Once compiled to an executable you will not need to recompile again unless you change it.
      7. C++ Compiler is software not hardware.
    2. Machine Independence
      1. At this level (ISA3) languages are machine independence
      2. In order for a program to run on both types of computers though you will need a compiler for each type/os that you want to run it on
    3. Program 2.1
      1. C++ variable have three attributes
        1. Name - identifier - provided by programmer
        2. Type - what type of values it can have
        3. Value - the content of the variable
      2. Sample program for review

        #include <iostream.h>
        const int bonus = 5;
        int exam1;
        int exam2;
        int score;
        main ( )
        {
        cin >> exam1 >> exam2;
        score = (exam1 + exam2) /2 + bonus;
        cout << "score = " << score;
        }
        INPUT
        86 72
        OUTPUT
        score = 84

      3. the #include <iostream.h> is a directive that allows the programmer to use >> and << to send information in and out of the computer.
      4. Variables in this program are of the type int meaning INTEGER
      5. The names are exam1, exam2, and bonus, they get their value form the input statement
      6. there is also a value called bonus which has a constant value (cannot be changed) which has a value of 5
      7. These values are set outside the main program, so they are global, but they could be local (inside the main function)
      8. First line that can be executed is cin >> exam1 >> exam2;
        which tells the program to read in from the input device two variables.
      9. Next is score << (exam1 + exam2) / 2 + bonus;
        this takes the values, adds them together, averages them and then adds a bonus and places it in the variable score
      10. This uses the = symbol which is called the assignment operator
      11. cout << "score = " << score; uses the standard output (monitor) to output the statements to the screen
    4. Program 2.2

      1. #include <iostream.h>
        char ch;
        main ( )
        {
        cin >> ch;
        cout << "Original Charachter: " << ch << endl;
        ch++;
        cout << "Following charachter: " << ch << endl;
        }

        INPUT
        d
        OUTPUT
        Original charachter: d
        Following Charachter: e
      2. char ch; creates a variable of character
      3. cout << "Original Charachter: " << ch << endl; makes that the output
      4. ch++; just adds 1 to the character value (same as character = character + 1)
      5. Last line outputs the next character
  2. Flow of Control
    1. Program 2.3
      1. Programs use statements to control the flow of the program, if and switch for selection and while, do and for are used for repetition
      2. The if statement checks to see if a statement comparing two values is true. Comparators are:
      3. == - Equal to
      4. < - Less than
      5. <= - less than or equa to
      6. > - Greater than
      7. >= - Greater than or equal to
      8. != - Not Equal to
      9. We can also combine the comparators with boolean operators
        1. && - AND
        2. || - OR
        3. ! - NOT
      10. If an if statement only has one statement after it, then you do not need { }, if it does, then you do need the { }
    2. Program 2.4 -(Switch Statement)
      1. In stead of having to use several if statements you can use a switch statement
      2. The switch is more efficient than the if statement
    3. Program 2.5 - (While loop)
      1. The while will allow a loop(all the material inside the { }) to repeat until the boolean condtions are met.
      2. Flow loops back to the top of the loop till condition is met.
    4. Program 2.6 - do
      1. do appears to not have any condition but it is at the exit of the loop
      2. The exit check is a while and checks for the condition to be met.
      3. It forces the loop to be done once
    5. Program 2.7 (for loop)
      1. Allows for a controlled count through things
      2. Has three parts to it
        1. initialize (x=0;
        2. test x < 4;
        3. increment x++)
  3. Functions
    1. Two types of functions in C++ - ones that return a value and ones that do not.
    2. Ones that do not in some languages are called procedures
    3. When the program is run and we have to go to a function information is placed on the memory stack (push) and when it returns it takes it off the memory stack(pop)
    4. This is refereed to as LIFO - Last In First Out
    5. Program 2.8
    6. Program 2.9
    7. Program 2.10
      1. Some functions will pass values with the function call
      2. In C++ this is done within the ( ) that are named after the function

Saturday, August 16, 2003

Multimedia Presentations


VoPP Presnetation


Rick Ronan


Unit 1



Lecture 1


Class is a junior level class of adults who plan on working hard. We are going to develop multimedia skills.
Read the Syllabus
Each unit is available on Thursday with the clock starting on it on Sunday. Unit work is done the following Sunday and it is closed 21 days after it is opened.
Each week we will have 2 of 3 things to do out of the following:
  • Projects - Exercises from the text - they can be shared with all - 45 points - grade will be returned ASAP

  • Threaded Discussions - Assigned by instructor - 45 points

    1. Respond to instructor question by Tuesday of the week

    2. Respond to 2 other students coments by 11:59PM of Sunday ending week

  • Webliography - designed to build content - shared tools in Multimedia - must be unique - first student claims credit, others find a different one - 45 points

This means since there is 2 out of 3 assigned there is 90 points available this way. An extra 10 points will be given each week for what is called the "wow factor". The student that does the best of the best in his/her assignments.
Presentation                        10 @ 45      450
Threaded discussions        10 @ 45      450
Webliography                      10 @ 45      450
                                                               ------
                                                               1350
Extra Credit Possible                               150
                                                               ------
                                                               1500
A = 90% or better [1350 or better]
B = 80 to 89% [1200 to 1349]
C = 70 to 79%       [1050 to 1159]
D = 60 to 69%       [900 to 1049]
F less that 60 % [899 or less]


Lecture 2


Hardware and Software needed for the class
Pentium Class computer
   Memory - more the better
   Monitor - Bigger is better
   Video - more memory on it better
   Audio
   Modem - 56K or DSL [faster better]
   Zip drive or CD burner
   Digital Still Equipment or video - nice to have

Software
Windows of some sort
Office Suite with Power Point (plus some image editor and photo draw program)
[Look at Star Office 5.2 [MY NOTE - it is now OpenOffice.ORG] Price is free
Browser IE 5.0 or better - Netscape 6 or better
Internet - faster better

Lecture 3


Unit is really week
Broken up into:
1. Daily Concepts
2. Learning Objectives
3. Reading
4. Lecture
5. Project
6. Threaded Discussion
7. Webliography
8. Coolest Thing

Project/Threaded Discussion/Webliography should take 2 to 3 hours a week.

Lecture 4


How much work should we do?
Reading will be aprox. 1 1/2 chapters a week (40 Pages)
the 2 out of 3 projects should take about 1 hour each or more.

ENGL-2333RTechnical Writing I


Technical Communications - Ninth Edition


Lannon, John M.


Chapter 2 - Preparing an Effective Technical Document


1. Consider the Key Tasks - (you will be doing four tasks in writing)
   1. Deliver the essential information
      1. Accurate information
      2. Answer questions:(like)
         1. How much explaining should I do?
         2. How will I organize?
         3. Do I need visuals?
   2. Make a persuasive case
      1. When the facts are neither complete or conclusive you need to make decisions
      2. Decisions represent you and your company
   3. Weigh the ethical issues
      1. Do you over look or sugarcoat things
      2. Is it fair and who might benefit or suffer are a few questions to ask.
   4. Work in teams
      1. Much of writing may be multinational in focus, and you may coloborate with people you have never met.
      2. You will need to work with diverse people with divese backgrounds
2. Rely on Creative and Critical Thinking
   1. Creative Thinking - explore new ideas, build on information
   2. Critical Thinking - test our ideas
   3. We apply these through the four stages in the writing process
      1. Gather and evaluate ideas and information
      2. Plan the document
      3. Draft the document
      4. Revise the document
   4. No one stage of these steps is complete till all are complete
3. In Brief: Communicating in a Virtual Company
4. Guidelines for Writing with a Computer
   1. Beware of computer junk - because it is easy to put in words, do not necessarily do it
   2. Do not confuse style with substance - fancy fonts and design cannot help a document that does not have good content
   3. Save and print work ofen
   4. Revise on hard copy
   5. NEVER depend on automated "checkers"
   6. Select a design and a transmission method that your audience favors
5. Exercises
6. Collaborative Project
7. Service-Learning Project

Friday, August 15, 2003

ENGL-2333RTechnical Writing I


Technical Communications - Ninth Edition


Lannon, John M.


Chapter 1 - Introduction to Technical Communications


1. Technical Communication Server Practical Needs
   1. Technical Documents Are User Oriented
      1. Technical documents do not focus on self-expression
         1. They do not focus on you personally
         2. They may focus on your knowledge
      2. Technical Documents focus on subjects, actions taken and actions required
   2. Technical Documents Strive for Efficiency
      1. Efficiency is measured as useful output to input (how much effort did you have to put in to getting the information out?)
      2. Reasons for inefficient documents are many:
         1. More (or less information that needed)
         2. Irrelevant or uninterrupted information
         3. Confusing organization
         4. Jargon or technical expressions people cannot understand
         5. More words than people need
         6. Uninviting appearance, confusing layout
         7. No visual aids when people need or expect them
      3. Efficient documents
         1. Content worth reading
         2. Organization that guides user
         3. Style the promotes fluid reading
         4. visuals that clarify concepts
         5. Acceptable format
         6. Supplements that allow users with needs to meet them.
2. Writing Is Part of Most Careers
   1. You may have to collaborate on a team
   2. You will write for the audience that will be reading your documents
3, Communication Has an Electronic and a Human Side
   1. Communication has been made quicker and easier by computers
   2. They still consist of written communications
4. Communication Reaches a Global Audience
   1. Writers must learn to respect language and cultural differences
   2. They must achieve efficiency without being offensive
5. In Brief: Transferable Skills for the Twenty-First Century
6. Exercises
7. Collaborative Project
8. Service-Learning Project

CS-3333R Object Oriented Technology


Object Oriented Programming in C++


Lafore, Robert


Chapter 1 The Big Picture



Why Do We Need Object-Oriented Programming
   Procedural Languages
      C, Pascal, COBOL, these are all procedural languages
      In procedural languages each line tells computer to do something
      Works well for small programs
      Division into functions
         As programs become larger they become harder to understand
         Functions were developed
         Grouping functions together in a separate entity is called a module
      Problems with Structured Programming
         Large Programs become complex
         Functions have unrestricted access to global data
         Unrelated functions and data provide poor models of the real world
      Unrestricted Access
         Two types of data
            Local
               inside functions
               used only by those functions
            Global
               Accessed by any function
               Leads to potential connections between functions and data
                  Difficult to conceptualize
                  Difficult to modify
            Real World Modeling
               Attributes - (characteristics)
                  Equivalent to data in person (blue eyes)
                  have a specific value
               Behaviour
                  How some things respond to stimulus
                  Like a function, it does what it is told to do.
   The Object-Oriented Approach
      Create a unit that contains data and functions to manipulate data
         Only way to access data is through object functions
         Data that does not need to be changed is hidden
      An Analogy
         Think of objects as departments in company
         Each department controls its own data
         One department gets data from another department by going through proper channels
      OOP: An Approach to Organization
         C+ statements look the same as procedural language statements and Object-Oriented Programming statements
         Only when they are viewed in context can one tell which they are
Characteristics of Object-Oriented Languages
   Objects
   Classes
      a description of a number of similar objects
      An object is called and instance of a class
   Inheritance
      In natural life we group things together because they are similar
      A bus and a car do not look the same but they are both vehicles, maybe cause one characteristics is wheels
      In OOP we have a base class that we reuse and they are called derived classes.
      Derived classes inherit their information the base class and add some of their own..(bus has lots of seats, car has limited amount, but vehicles has wheels and seats)
   Reusability
   Creating New Data Types
      We can create types to match what we need to do
      We can send the information to the class that we create
   Polymorphism and Overloading
      We can define what normal operators do while in the the class (overloading)
      We can use functions and operators in different ways (Polymorphism)
C++ and C
   Is a subset of C
   Originally called C with classes
Laying the Groundwork
The Unified Modeling Language (UML)
   UML provides way to visualize higher-level organization of programs
   Programmer does not have to get caught up in details of actual code.
   Important part of UML is diagrams
      Class diagrams about how the classes relate
      Sequence diagrams show how classes communicate
Summary
Questions
[Listening to: BVOV Radio 128 kbps Stereo Stream - Kenneth Copeland Ministries - (00:00)]

Sunday, August 10, 2003

Computer architecture


A+ Guide to Managing and maintaining Your PC


Chapter 1 - Introducing Hardware


Hardware Needs Software to Work
   Hardware refers to the computers physical components
   Software refers to the instructions that direct hardware to accomplish a task.
   Computers use four basic functions to do tasks
      input
      processing
      output
      storage
   People must interact with computers in a language that the computer understands
   The language that it understands are basic on and off of electrical pulses
   In order to make it easier for humans, those on (1) and off(0) were converted to other number systems
      Binary - 0 and 1 at simplest
         Bit - binary Digit
         Byte - 8 bits = 1 byte or one character
         ASCII - standard where the 1s and 0s of a byte mean certain things.
         Hexadecimal notation (Hex) - Breaks the byte into two parts and uses a numbering system of base 16 (0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f)
PC Hardware Components
   All hardware whether inside or outside the case need three things to operate
      A method for the CPU to communicate with the device
      Software to instruct and control the device
      Electricity to power the device
   Hardware used for Input and Output
      Most hardware used for input/output exisist outside the case and communicate through ports
      Most ports are on back of computers, some have some of the ports on the front
      Common Devices
         Keyboard
         mouse
         monitor
         printer
   Hardware Inside the Computer Case
      Motherboard
         CPU
         Memory
         other components
      Floppy drive, hard drive and CD ROM for permanent storage
      Power Supply with cords for providing electricity to components
      Circuit boards used by CPU to communicate with internal and external devices
      Cables to connect devices to circuit board and motherboard
   The MotherBoard
      Also called main system board
      Components found on all motherboards
         For Processing
            Central Processing Unit (CPU)
            Chips that support the CPU by controlling many motherboard activities
         For Temporary Storage - Random Access Memory (RAM)
         For communicating with other devices
            traces or wires on the motherboard
            expansion slots to connect expansion cards to the motherboard
            system clock to keep everything in sync
         Electrical system - power supply
         Programming and setup data
            Flash ROM - stores permanent instructions for basic hardware functions
            CMOS - configuration data
   The CPU and Chip Set
      CPU is chip in computer that does processing
      It is assisted by a chip set made for it to help control input and output to and from it
      IBM compatibles computers use: Intel, AMD, VIA, SiS, Cyrix
      Apple computers use chips from Motorola
   Storage Devices
      Primary Storage
         RAM - Random Access Memory
            Many styles
               SIMM - Single Inline Memory Modules
               DIMM - Dual Inline Memory Modules
               RIMM - Memory modules manufactured by Rambus
            These types of memory are volatile - loose what is in them when power is lost
            There is a type of memory called ROM (Read Only Memory)
            In Windows 9x and 2000 you can see CPU and memory installed
               Right click my computer on desktop and trace to properties
               Choose the general tab
               Read the information
      Secondary Storage
         Hard Drive
            Sealed case with platters that rotate to store information on.
            Most use EIDE (Enhanced Itegraded Drive Electronics) a growth from the IDE drives
            Four hard drives in a system is maximum if using IDE
            Motherboard usually has two connectors to accommodate the IDE drives (2 drivers per a connector)
            Drives receive power from power supply.
         Floppy Drive
            Two most common sizes are 3 1/2" and 5 1/4" with 3 1/2" most prevalent
            Due to CD-ROM and Zip drives, not as common as they used to be.
   Motherboard Components used for Communicating Among Devices
      Lines on the motherboard are referred to as traces
      when a group of them are together and use a protocol (a set of rules to communicate) then it is used to move data - a data bus
      Information does not travel down them as we visualize, but voltages are turned on and off in an agreed upon time frame.
      Width of data bus is the data path size
      Main Bus goes by several names: system bus, memory bus, hos bus, front side bus, external bus
      One line is used as system clock
         Receives timing information from a crystal on the motherboard
         Keeps all the components in sync
         Clock is measured in hertz (Hz) but more often in megahertz (MHz) and Gigahertz (GHz)
      Some traces go to expansion slots
         PCI (Peripheral Component Interconnect - used for high speed I/O devices)
         AGP (Accelerated Graphics Port -- used for video)
         ISA (Industry Standard Architecture - older, slower devices)
   Interface (Expansion) Cards
      See names as explained above
      easiest way to tell what they do is to look at the back of the card and see what type of port is on it.
   The Electrical System
      Power supply converts voltages that the computer needs to use from 110-120 colts AC power
      Also has a fan to cool the internal components
      Cables provide the power that is needed to the system
   Instructions and Data Stored on the Motherboard
      Basic instructions to start up the computer are stored in a special ROM, by special switches, and by using CMOS configuration
      Distinction between hardware and software softens with ROM chips
         ROM Chips contain software to boot up system
         They are permanent part of system so they are hardware
         Term for the hybrid is Firmware
      Some chips are BIOS - Basic Input /Output System
      Some ROMs can be upgraded, they are called flash ROM
      CMOS is another type of memory on motherboard used to start it up, contains small amount of memory
      Some installation information is stored with DIP switches or jumpers.

Computer Archtechture

Book: Computer Systems

Chapter 1

Parts 1.1 and 1.2

  1. Levels of Abstraction
    1. Definition
      1. Abstraction is the supression of detail to show the essanceof the matter.
      2. An outline structure
      3. Division of responsibility through a chain of command
      4. Subdivision of a system into smaller subsystems.
    2. There are three graphical representations of levels of abstraction
      1. Level diagrams
        1. Boxes are arranged vertically
        2. Top box highest level of abstraction; bottom is least level of abstraction
      2. Nesting Diagrams
        1. Boxes inside each other
        2. Outer most box is most abstract, inner is least abstract

      3. hierarchical Tree
        1. Like the branches in a tree
        2. Top of tree is most abstract, bottom of tree is leastabstract
    3. Abstraction in Art
      1. Supression of details is an integral part of abstract art that carries over to computers
      2. This is shown by the art of solving the larger problems and working way to details later.
    4. Abstraction in documents
      1. The US Constitution shows examples of abstraction with levels of power
      2. You can see the level of abstraction by outlining the document.

    5. Abstraction in organizations
      1. In most organizations this will be a hierachcial structure
      2. Military organizations have a more direct chain of command
    6. Abstraction in Machines
      1. People relate to machines based on what they need to know to do their job
        1. Driver drives the car
        2. Mechanic knows how to fix the car
      2. Same is true with computers, you do not need to be a programmer to use a word processing program
    7. Abstraction in Computer Science
      1. There are seven levels of abstraction in computers
      2. Levels developed to make it easier to program/use.
      3. Levels are as follows
        1. Level 7 (APP7) Language dependant of application programs
          1. Where people first encounter computers
          2. Applications themselves
        2. Level 6 (HOL6) Machine independent Program Language
          1. Language use to make programs portable
          2. FORTRAN, BASIC, C++, Lisp, Java
        3. Level 5 (ASMB5) Assembler Language
          1. Specific for each computer type
          2. Saves us from having to program at a lower level

        4. Level 4 (OS4) Operating System Calls
          1. Specific to machine
          2. Allows for specific things to be done in the OS
        5. Level 3 (ISA3) Machine Language
          1. Language computer understands
          2. Tedious for people to use
        6. Level 2 (Mc2) Microinstructions and register transfer
          1. Important in the creation of handheld calculators
          2. Used on some computers for implantation of machine language
        7. Level 1 (LG1) Boolean Algebra and truthtables
          1. Original levels used to communicate with original
            computers
          2. Tedious and hard to do.
    8. Goal in book is to communicate with computers effectively
  2. Hardware
    1. Computers consist of Hardware and Software
      1. Hardware is physical part of the system
      2. Software is the set of programs that instructs the hardware
        1. Easier to modify
        2. Software allows computer to solve different types of problem.
    2. Computers have four basic components
      1. Input devices
      2. Output devices
      3. Main Memory
      4. Central processing unit (CPU)
    3. Computers are classified according to relative physical size.
      1. Small - Microcomputer
      2. Medium - Workstation
      3. Large - Mainframe
    4. Classifications are according to physical size as opposed to storage size
    5. Computer scientist are concerned with space (storage) and time (how long it takes to compute a problem).
    6. Input Devices
      1. Keyboards
        1. Standard typewriter style but produces electrical signals
        2. Stored as binary digits (BITs), eight of which is a BYTE
        3. Because of abstraction, user does not know how it works, just that it does
      2. Disk Drives
        1. Stores data on drive that can be later added to or read from
        2. Two types of disk drives
          1. floppy disks
            1. flexible oxide coated film
            2. capacity has improved greatly over the years
          2. Hard Disks
            1. Rigid, usually a metal like aluminium coated with oxide
            2. Most are permanent in computer but some are removable
        3. Third type that has become widely used is optical CDs
      3. Magnetic Tape Drives
        1. low cost makes good for storage use
        2. linear access (v. Random access for drives) makes it long to read in the data , especially if at end of tape
      4. Mouse Devices - used to move arrow around on screen
      5. Bar Code Readers
        1. UPC is classic example
        2. allows for quick and efficient entry of data
    7. Output Devices
      1. Disk Drives - talked about as input device
      2. Magnetic Tape Drives - talked about as input device
      3. Screens
        1. CRT - packaged separately from keyboard, works with microcomputer
        2. Terminal - keyboard and CRT, have to connect to a workstation or mainframe
        3. Early days were measured by lines of text, 24 lines by 80 character being the normal
        4. Not measured that way anymore due to graphical nature of operating systems
      4. Printers
        1. Vary in performance and cost
        2. Two main types are
          1. Ink Jets - spray ink on to a paper,print line at a time.
          2. Laser Printers - prints page at a time, burns information on to page
    8. Main Memory
      1. Sorts data being processed and programs
      2. It is volatile, looses its information when computer looses power
      3. Access method is random
    9. Central Processing Unit
      1. Controls all the other parts of the computer
      2. Has its own small set of memory called registers
      3. Machine instructions are hardwired into it
  3. Software
    1. Algorithm - a set of instructions that, when carried out in proper sequence, solve a problem in a finite amount of time
      1. Does not require a computer
      2. recipes are an example of algorithm
    2. Program - algorithm written for execution on a computer
      1. Must be in language of one the seven levels talked about earlier
      2. Programs are called software
        1. System Software
        2. Application Software
    3. Operating Systems - Program that makes the computer usable
      1. three functions
        1. File management - most familiar to user
          1. similar to storing files in an office
          2. Files are documents, programs or data
        2. Memory management
        3. Processor Management
    4. Software Analysis and Design
      1. Good programming has clarity, speed and memory constraints
      2. Writing a good program requires you to:
        1. Understand the problem
        2. Outline a solution
        3. Solve each part of your outlined problem
        4. test your solution by hand
        5. Test your solution on the computer
  4. Database Systems
    1. Most common of Level 7 Apps
      1. Program that lets users add, delete and modify records in a database
      2. Also permits a query - a request for information from a part of the database
    2. Come in three types
      1. hierarchical systems - fastest but most restrictive
      2. Network systems - more flexible, but harder to learn
      3. relational systems - most popular, flexible, easy to use, lowest speed
    3. Relations
      1. Store data in things that appear to be tables - called relations
      2. column is called a attribute and row is called a tuple
    4. Queries
      1. Requests for information from the database
      2. Results can be written in a table themselves
      3. This is a level APP7 language (Application)
      4. Examples of commands could be:
        1. select - takes rows that satisfy a condition
        2. project - takes columns from a given table that satisfy a condition
        3. join - creates new table from two other tables, twice as wide.
    5. Structure of the Language
      1. Reserve words - words that tell the database to do something
      2. identifiers - words that define the database and created by user.
      3. Common in all programming languages