User Tools

Site Tools


opus:spring2012:ngraham2:part3

Part 3

Entries

Entry 9: April Day, 2012

The final full month of class is here. So far I honestly haven't done much outside of the initial programing the first few weeks of class. Hoping to be able to play catch up. Well I spent the vast majority of class on the 4th working on my opus. Choose my first keyword to be “logical gates” as I spent a good bit of time earlier in the year working on a few.

Entry 10: April Day, 2012

Seemed like more of a study hall than a class today. So I guess I'll try and work on the Opus some.

Working on keywords “Negated Logic Operations” and “Instruction Sets”.

Need to make a table showing a demo of the instruction set we theorized in class.

Also worked on the “Binary and Hexadecimal Number Representation” keyword.

Add “I/O” to the list of keywords worked on.

Entry 11: April Day, 2012

TBC

Entry 12: April Day, 2012

TBC

asm Keywords

asm Keyword 17: Logic Operations
Definition

A set of munipulations that are performed on 1 or 2 bits to get a predefined output. Based on the bit/s loaded into the Logic Gate you get a 1 or true reply if they fit the standard set by the gate.

Demonstration

Here is a demonstration of the chosen keyword using an and gate.

#include "and.h"
 
bool AND::getX()
{
     bool tmp = false;
 
     if((A == true) && (B == true))
     {
          tmp = true;
     }
 
     return tmp;
}

Here is an example of the output.

Lab46:~/src/cpu/example$ ./andtest
---------------
TRUE is: 1
FALSE is: 0
---------------

 a | b | x
---+---+---
 0 | 0 | 0
 0 | 1 | 0
 1 | 0 | 0
 1 | 1 | 1
-----------
Lab46:~/src/cpu/example$
asm Keyword 18: Negated Logic Operations
Definition

A set of munipulations that are performed on 1 or 2 bits to get a predefined output. Based on the bit/s loaded into the Logic Gate you get a 1 or true reply if they fit the standard set by the gate, which are the oppisite of your typical Logical Gates.

Demonstration

Here is a demonstration of the chosen keyword using a nand gate.

#include "nand.h"
 
NAND::NAND()
{
        myandgate = new AND();
        mynotgate = new NOT();
}
 
bool NAND::getX()
{
        bool tmp = true;
 
        myandgate -> setA(A);
        myandgate -> setB(B);
 
        tmp = myandgate -> getX();
 
        mynotgate -> setA(tmp);
 
        tmp = mynotgate -> getX();
 
        return(tmp);
}

Here is an example of the output.

--------------------
TRUE is: 1
FALSE is: 0
--------------------

 a | b | x 
---+---+---
 0 | 0 | 1
 0 | 1 | 1
 1 | 0 | 1
 1 | 1 | 0
-----------
asm Keyword 19: Instruction Sets
Definition

These are the commands used by the microprocessor. They determine what kind of process is going to be performed. There are two typical types of sets that are used. RISC is one of these. It's more compact in an attempt to stream line the processes. CISC is the other commonly used format. The set is much longer, but also more robust.

Demonstration

In class earlier in the year we came up with a theoretical instruction set. It is 32 bits and has five basic manipulations and there corresponding instructions. It was going to only address memory and registers. The five manipulations are and, not, or, move and branch(Which would include if).

Put table here.

asm Keyword 20: Binary and Hexadecimal Number Representation
Definition

These are number system just like the base ten system we all now. Except Binary is a base two system and Hexadecimal is a base 16 system. Binary being a base two number system you only need two characters to write out any number. The two most commonly used are '0' and '1'. Hexadecimal however needs 15 characters to represent every number we know. They are '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E'. A would = the number 10 in base ten and so on.

Demonstration

For example the number twenty in the base ten we know would look much different in binary or hexadecimal.

20 in binary = 1010

20 in hex = 14

asm Keyword 21: I/O
Definition

Also known as input/output. This is the munipulation of data performed by a source outside of the computer.

Demonstration

Here is an example of me inputing data via the keyboard and the result being output to a monitor.

lab46:~/datastr$ ./homework 

1.  To build the list.
2.  To view the list.
3.  To clear the list.
4.  To insert a number into the list.
5.  To append a number into the list.
6.  To delete a number.
7.  To sort the list.
8.  To exit.

Please make your selection: 1
Enter a value (-1 to quit): 2
Enter a value (-1 to quit): 4
Enter a value (-1 to quit): 6
Enter a value (-1 to quit): 8
Enter a value (-1 to quit): -1

1.  To build the list.
2.  To view the list.
3.  To clear the list.
4.  To insert a number into the list.
5.  To append a number into the list.
6.  To delete a number.
7.  To sort the list.
8.  To exit.

Please make your selection: 2
LIST(fwd): 2 -> 4 -> 6 -> 8 -> NULL
LIST(rev): 8 -> 6 -> 4 -> 2 -> NULL

1.  To build the list.
2.  To view the list.
3.  To clear the list.
4.  To insert a number into the list.
5.  To append a number into the list.
6.  To delete a number.
7.  To sort the list.
8.  To exit.
asm Keyword 22

Identification of chosen keyword (unless you update the section heading above).

Definition

Definition (in your own words) of the chosen keyword.

Demonstration

Demonstration of the chosen keyword.

If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:

/*
 * Sample code block
 */
#include <stdio.h>
 
int main()
{
    return(0);
}

Alternatively (or additionally), if you want to demonstrate something on the command-line, you can do so as follows:

lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$ 
asm Keyword 23

Identification of chosen keyword (unless you update the section heading above).

Definition

Definition (in your own words) of the chosen keyword.

Demonstration

Demonstration of the chosen keyword.

If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:

/*
 * Sample code block
 */
#include <stdio.h>
 
int main()
{
    return(0);
}

Alternatively (or additionally), if you want to demonstrate something on the command-line, you can do so as follows:

lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$ 
asm Keyword 24

Identification of chosen keyword (unless you update the section heading above).

Definition

Definition (in your own words) of the chosen keyword.

Demonstration

Demonstration of the chosen keyword.

If you wish to aid your definition with a code sample, you can do so by using a wiki code block, an example follows:

/*
 * Sample code block
 */
#include <stdio.h>
 
int main()
{
    return(0);
}

Alternatively (or additionally), if you want to demonstrate something on the command-line, you can do so as follows:

lab46:~$ cd src
lab46:~/src$ gcc -o hello hello.c
lab46:~/src$ ./hello
Hello, World!
lab46:~/src$ 

asm Objective

asm Objective

State the course objective

Definition

In your own words, define what that objective entails.

Method

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

Measurement

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

Analysis

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

  • How did you do?
  • Is there room for improvement?
  • Could the measurement process be enhanced to be more effective?
  • 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?

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/ngraham2/part3.txt · Last modified: 2012/04/18 19:46 by ngraham2