User Tools

Site Tools


opus:spring2012:dschoeff:part3

Part 3

Entries

April 4th, 2012

Spring is in the air! The birds are chirping the sun is shining… but I'm in the lair so I can't enjoy any of that. I finished everything in my Opus last month except for the experiments. I really could not think of anything having to with class that I could do an experiment on. I know that the experiments don't have to be related to class but it just seems pointless to do an experiment that has nothing to do with this class. I will work this month on getting to my experiments earlier on so I have more time to think about them.

April 19th, 2012

Today I will be working on my Opus and simulator. Got a little catching up to do but I'll get it done.

April 20th, 2012

It is so nice outside today! Yesterday I did some Opus stuff with boolean arithmetic and dated entries while doing some reading up on registers. Today feels like another fun Opus day. I have 7 more keywords to do so I'll get at it…

April 29th, 2012

I have started work on my EoCE and am going to bang out my keywords the next few days. I'm starting to understand exactly what I have to do for the simulator and I think I won't have too many problems getting most of the stuff working.

asm Keywords

Boolean Arithmetic Operations(Addition, Subtraction, Multiplication, Divide)
Definition

In Boolean algebra, there are only two possible values for any quantity or operation that you may be able to perform on them, a 1 and a 0.

Demonstration

Boolean addition works practically the same way that addition with integers works. Consider the following sums.

0 + 1 + 1 = 1
1 + 1 + 1 = 1
0 + 1 + 1 + 1 = 1
1 + 0 + 1 + 1 = 1

Since you can only represent a quantity by either a one or a zero, the answer for these four equations is 1.

The following pictures show how boolean addition is related to an “or” gate.

There is also Boolean multiplication. This follows the same rules as integer multiplcation. Anything multplied by zero is zero and 1 times 1 is 1. The follwing pictures show the relationship between boolean multiplication and the AND gate.

From my understanding both subtraction and division are invalid boolean operations.

Instruction Sets (CISC, RISC)
Definition

An instruction set is a group of commands that allow a computer to do specific things. These may include instructions to add two registers or branch to another location and perform the instructions there. CISC stands for complex instruction set computing. This means a single instruction can execute several different low-level operations. Risc stands for reduced instruction set computing. This strategy is different than a CISC design because there are fewer, more optimized set of instructions.

Demonstration

Examples of CISC architectures are PDP-11, VAX, and the Motorola 68000.

Examples of RISC architectures areDEC Alpha, AMD 29k and ARM processors.

Data Representation (Big Endian, Little Endian, Size, Integer, Floating Point, ASCII)
Definition

Computers are only able to represent data as one's and zero's. The way those 1's and 0's are grouped or ordered determines the way they are interpreted by the computer.

Demonstration
Big Endian

Big Endian means that the given data unit is ordered from left to right as most significant to least significant.

Little Endian

Little Endian means that the given data unit is ordered from left to right as least significant to most significant.

Size
Integer

Integer data representation can vary between computer architectures. In C, an integer represents a grouping of 4 bytes. This means it can represent the values of −2,147,483,648 to 2,147,483,647 signed and 0 to 4,294,967,295 unsigned.

Floating Point

Floating point is a method of representing real numbers that can support a wide variety of values. It can do this because it represents data in the form Significant digits * base^exponent.

ASCII

ASCII is an encoding scheme that is used to represent characters. In ASCII the character 'A' is signified by the binary number 1000001. ASCII can represent a total of 128 different things.

Control/Data Flow
Definition

Wikipedia says “In computer science, control flow (or alternatively, flow of control) refers to the order in which the individual statements, instructions or function calls of an imperative or a declarative program are executed or evaluated.” It is basically they order that stuff is run by the computer.

Demonstration

By default, the flow of a program is linear. Like sequential statements. This however is not the case in a in an if statement because depending on a certain condition the program can branch to different places.

Linking, Object and Machine Code
Definition

A linker takes a bunch of object files and converts them into a single executable file.

Demonstration

The following diagram shows how this happens.

Data Representation(Sign Representation, One's Complement, Two's Complement
Definition

When computers represent positive and negative numbers, it is different than we represent them by slapping a - in front of it. Computers have different ways of doing this. Two of these ways are One's Compliment and Two's Compliment.

Demonstration
One's Compliment

One's compliment form of a negative binary number is simply the bitwise NOT operation. 00000000 represent 0 and 11111111 represents -0. The decimal number 15 is 00001111 and -15 is 11110000.

Two's Compliment

In two's compliment, there is only one 0 and it is represented by 00000000. The negative of a number is found by negating all the bits then adding 1. 15 is 00001111 and -15 is 11110000 + 1 = 11110001.

Processor & Memory Organization
Definition

A CPU has many different parts: Registers, control unit, ALU, etc…

Demonstration

The control unit has the task of fetching, decoding and managing execution and then storing those results.

Registers allow data to be stored in a convenient place for the processor to handle it.

The ALU performs all the arithmetic operations required.

Data Instructions( Data Movement, Address Movement, Data Conversion, Bit Manipulation)
Definition

Data conversion is simply converting data of one format to another format. This is like when using the static_cast operator to convert a variable of type int to type double or converting an .mp3 to a .wmv file.

The smallest form a data computers can manipulate is a bit. They do this by performing logical operations on them such as AND, OR, NOT and so on.

asm Objective

asm Objective

familiarity with the role of the C library

Definition

I believe this objective entails not only knowing what the C library has to offer but implementing that efficiently in a program

Method

State the method you will use for measuring successful academic/intellectual achievement of this objective.

I will become familiar with the C library by using it frequently and reading more about it.

Measurement

Follow your method and obtain a measurement. Document the results here.

By using the C library of functions frequently, I think I have gained a good understanding of most of the basic functions.

Analysis

Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.

  • How did you do? Coming into this course I thought I had a fairly good understanding of how to use the C library. I gained even more knowledge through the time in this course.
  • Is there room for improvement? By far. I know I have only scratched the surface of what is possible to do with it.
  • Could the measurement process be enhanced to be more effective?I'm not sure.
  • Do you think this enhancement would be efficient to employ?
  • Could the course objective be altered to be more applicable? How would you alter it?Possibly be more specific in the objective. What part of the C library should become more familiar with?

Experiments

Experiment 7

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Experiment 8

Question

What is the question you'd like to pose for experimentation? State it here.

Resources

Collect information and resources (such as URLs of web resources), and comment on knowledge obtained that you think will provide useful background information to aid in performing the experiment.

Hypothesis

Based on what you've read with respect to your original posed question, what do you think will be the result of your experiment (ie an educated guess based on the facts known). This is done before actually performing the experiment.

State your rationale.

Experiment

How are you going to test your hypothesis? What is the structure of your experiment?

Data

Perform your experiment, and collect/document the results here.

Analysis

Based on the data collected:

  • Was your hypothesis correct?
  • Was your hypothesis not applicable?
  • Is there more going on than you originally thought? (shortcomings in hypothesis)
  • What shortcomings might there be in your experiment?
  • What shortcomings might there be in your data?

Conclusions

What can you ascertain based on the experiment performed and data collected? Document your findings here; make a statement as to any discoveries you've made.

Retest 3

Perform the following steps:

State Experiment

Whose existing experiment are you going to retest? Provide the URL, note the author, and restate their question.

Resources

Evaluate their resources and commentary. Answer the following questions:

  • Do you feel the given resources are adequate in providing sufficient background information?
  • Are there additional resources you've found that you can add to the resources list?
  • Does the original experimenter appear to have obtained a necessary fundamental understanding of the concepts leading up to their stated experiment?
  • If you find a deviation in opinion, state why you think this might exist.

Hypothesis

State their experiment's hypothesis. Answer the following questions:

  • Do you feel their hypothesis is adequate in capturing the essence of what they're trying to discover?
  • What improvements could you make to their hypothesis, if any?

Experiment

Follow the steps given to recreate the original experiment. Answer the following questions:

  • Are the instructions correct in successfully achieving the results?
  • Is there room for improvement in the experiment instructions/description? What suggestions would you make?
  • Would you make any alterations to the structure of the experiment to yield better results? What, and why?

Data

Publish the data you have gained from your performing of the experiment here.

Analysis

Answer the following:

  • Does the data seem in-line with the published data from the original author?
  • Can you explain any deviations?
  • How about any sources of error?
  • Is the stated hypothesis adequate?

Conclusions

Answer the following:

  • What conclusions can you make based on performing the experiment?
  • Do you feel the experiment was adequate in obtaining a further understanding of a concept?
  • Does the original author appear to have gotten some value out of performing the experiment?
  • Any suggestions or observations that could improve this particular process (in general, or specifically you, or specifically for the original author).
opus/spring2012/dschoeff/part3.txt · Last modified: 2012/04/29 21:07 by dschoeff