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.
Today I will be working on my Opus and simulator. Got a little catching up to do but I'll get it done.
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…
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.
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.
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.
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.
Examples of CISC architectures are PDP-11, VAX, and the Motorola 68000.
Examples of RISC architectures areDEC Alpha, AMD 29k and ARM processors.
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.
Big Endian means that the given data unit is ordered from left to right as most significant to least significant.
Little Endian means that the given data unit is ordered from left to right as least significant to most significant.
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 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 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.
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.
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.
A linker takes a bunch of object files and converts them into a single executable file.
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.
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.
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.
A CPU has many different parts: Registers, control unit, ALU, etc…
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 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.
familiarity with the role of the C library
I believe this objective entails not only knowing what the C library has to offer but implementing that efficiently in a program
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.
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.
Reflect upon your results of the measurement to ascertain your achievement of the particular course objective.
What is the question you'd like to pose for experimentation? State it here.
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.
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.
How are you going to test your hypothesis? What is the structure of your experiment?
Perform your experiment, and collect/document the results here.
Based on the data collected:
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.
What is the question you'd like to pose for experimentation? State it here.
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.
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.
How are you going to test your hypothesis? What is the structure of your experiment?
Perform your experiment, and collect/document the results here.
Based on the data collected:
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.
Perform the following steps:
Whose existing experiment are you going to retest? Provide the URL, note the author, and restate their question.
Evaluate their resources and commentary. Answer the following questions:
State their experiment's hypothesis. Answer the following questions:
Follow the steps given to recreate the original experiment. Answer the following questions:
Publish the data you have gained from your performing of the experiment here.
Answer the following:
Answer the following: