User Tools

Site Tools


opus:fall2012:jcavalu3:part3

Part 3

Entries

Entry 1: November 9, 2012

  • On this day, I learned about head and tail.
  • Both are regular expressions used to access different areas of a file.
  • The expression head is used to access the top of a file, it can be manipulated with other commands to access certain amounts of the beginning.
  • The expression tail is used to access the bottom of a file, it can also be manipulated with other commands but it will access specific amounts in the bottom.
  • One can also use them together to access even more specific data in a file.

Entry 2: November 9, 2012

  • We were told more in-depth about Makefiles.
  • Makefiles are used to make compiling, copying the directory and other useful command line activities easier by typing in one or two words on the command line.
  • Some of the commands are copy, make, make debug, make poop (NOT), many other funstuffs!
  • It is a script file that just reads the file names in the directory in a lot of cases and puts them in for compiling, copying, etc.

Entry 3: November 8, 2012

  • The GD LIBRARY!!!!
  • The gd Library is used to create some sort of graphic output using programming languages and compiling those files.
  • The file given to us was a pac-man like image with a border, a rectangle on the bottom and a web-URL. With that, we were able to manipulate it and create a CCC logo just the other day.
  • There are many functions available to programmers, but the only relevant ones that I have used so far are the arc function, rectangle function, and line function.

Entry 4: November 7, 2012

  • Binary Tree Fun Stuff!
  • The binary tree is used to sort a queue of values in numerical order.
  • There are multiple ways of implementing the binary tree, we are tasked with creating an iterative method, recursive method, and stack method of sorting. Each will probably use the left-parent-right method.
  • The left-parent-right method: taking values in a queue, comparing them along the list, then moving all the way to the left and inputting the value into that node. Next, it will move to the parent node and input the next largest value. From there, it will move to the right and input the next largest value. The program will then shift back to the left, input the next largest value, then to the parent, then to the right, until it hits the middle of the queue, then it will move to the right, then the left and input the next largest value there, then to the parent, input the value, until the end of the queue is reached.

Keywords

data Keyword 3

prefix (polish) notation

Definition

Polish Notation, also known as Prefix Notation, is a form of notation that puts the operator at the beginning instead of between two numbers or other operations. Example:

  • (20 - 11) * 5 is represented as *(- 20 11) 5

References

data Keyword 3 Phase 2

Iterative Tree Traversal

Definition

Iterative Tree Traversal is the act of moving through a binary tree by the use of repetition. The function would most likely have nested for loops, which will result in more code than that of recursive tree traversal.

References

List any sites, books, or sources utilized when researching information on this topic. (Remove any filler text).

  • Reference 1
  • Reference 2
  • Reference 3

Demonstration

Demonstration of the indicated 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:

/*
 *
 * PSEUDO CODE
 *
 */
 
 
    queue[7] = 11, 22, 33, 44, 55, 66, 77;
    queuevalue = queue[0];
 
    while node -> left != NULL
        node = node -> left;
 
    node -> value = queuevalue;
 
    node = node -> parent;
    node -> value = queue[1];
 
    /* And this goes on until the tree is filled, resulting in:
 
                44
        22              66
    11      33      55      77
*/

discrete Keyword 3

kleene star

Definition

Kleene star is an operation that gives a single output (unary operation) and is used on sets of strings or sets of characters or symbols. Used a great amount in regular expressions, its purpose is to search a file for any combination of the given strings or characters.

Example:

  • {“cd”, “q”}* = {ε, “cd”, “q”, “cdq”, “cdqcd”, “qcdq”, “cdcdq”, “qqcd”, “qcdcd”, “cdqq”, …}.

References

List any sites, books, or sources utilized when researching information on this topic. (Remove any filler text).

discrete Keyword 3 Phase 2

Karnaugh Mapping

Definition

Karnaugh Mapping is a method by which one can take a truth table, or an expression, and simplify it. The working example on wikipedia is VERY useful in understanding this - I would recommend drawing it all out on a whiteboard and going by step-by-step. That is how I was able to grasp an understanding of it. I'll attach a photo as well showing how I worked through the example.

References

Demonstration

Demonstration of the indicated keyword.

For my demonstration of Karnaugh Mapping, I performed the same steps as the person that defined it originally, and took a picture of it. It is used to simplify any truth table so that you can just represent the common truths as functions.

Example:

  • If f(A,B,C,D) has any combination including AC', then the result will be true.
  • If f(A,B,C,D) has any combination including AB', then the result will be true.
  • If f(A,B,C,D) has any combination including BCD', then the result will be true.

unix Keyword 3

mesg/write/wall

Definition

  • mesg - A Unix command that allows or denies the ability of other users to write to your terminal.
  • write - used to allow people to write messages to each other.
  • wall - (an abbreviation of write to all) used to display the contents of a file or standard input to all logged-in users.

References

List any sites, books, or sources utilized when researching information on this topic. (Remove any filler text).

  • Reference 1
  • Reference 2
  • Reference 3

unix Keyword 3 Phase 2

bvi/hexedit

Definition

bvi: BVI is a binary visual editor, it allows you to visually see binary values and edit them.

Hexedit: Hexedit is a similar program that show's you the same values in hexidecimal instead of binary.

References

List any sites, books, or sources utilized when researching information on this topic. (Remove any filler text).

  • Reference 1
  • Reference 2
  • Reference 3

Demonstration

Demonstration of the indicated keyword.

Hexedit:

BVI:

Experiment 3

Question

For my final experiment of the semester, I took a computer from the LAIR and put all of the necessary parts back into it (hard drive, RAM) so I could have a computer of my own to work with during the upcoming semesters.

Resources

I received help from Tom and Evan when I put the computer together. I put my desktop computer together during the summer of 2011, but I received help from a good friend of mine and I didn't really pay much attention to what went where and how it all worked, which is why I wanted to do this, so I could get a better understanding of how things go inside of a computer.

Hypothesis

I believe that this will be a good learning experience for me. Like I had previously stated, I need to understand the inner workings of a computer more and I feel as if this is a good start.

Experiment

I am going to take a computer down in the LAIR that doesn't have all of the necessary components to run and fix it up so that it can. (The computer already has a CPU inside of it and, seeing as how I accidentally messed up my old desktop's CPU when trying to clean it out, I figure that I won't bother taking it out and putting it back in, I'll just explain its purpose without showing its installment).

Data

The modern computer begins with the computer case. Every computer has a case to protect it from dust, dirt, fur, getting kicked, holds the power supply, motherboard in most cases comes with a usb port or two, and any other drives like the CD/DVD drive, floppy disk drive, etc.

The following is a picture of the case opened up:

The next piece of hardware that should be installed is the power supply. The power supply, as you probably could have guessed, gives all of the other hardware inside of the case power so that it can function. Power supplies range in the amount of power they put out.

The following is a picture of the power supply already installed:

Next, the motherboard should be installed into the case. The motherboard connects the circuit between all of the hardware in the case. In many cases, motherboards can come with integrated graphics, networking, audio, although the integrated hardware is not as powerful as the card counterparts (graphics cards, sound cards, network cards, etc.)

Directly connected to the motherboard are the CPU and the RAM.

  • The CPU is what performs the basic arithmetic, logical and input/output operations of the instructions of the computer programs being run.

The following is a picture of the CPU covered with a heat sink which cools the CPU due to all of the processes and currents running through the CPU:

  • The RAM is used to access memory in any storage location at any time quicker than hard drives, CDs, etc.

The following is a picture of RAM connected to the motherboard:

The hard drive is the final necessary piece of hardware for the computer to run correctly. The hard drive is the storage for the computer and allows the RAM to access it whenever it is needed.

The following is a picture of the installed hard drive:

With all of the hardware installed, the computer did work, however, I found a better computer and I am using it now, so I uninstalled the hardware for others to use. But here is a picture of the hard drive and RAM before it was installed:

Analysis

Based on the data collected:

  • I learned more about how the hardware is installed and it was a grand 'ol time!
  • I had a bit of an understanding of the computer hardware from classes I have taken and when I put together my own computer, but it was nice to have a quick refresher on the hardware and it's purpose.
  • Due to the computer having a few things like the power supply, a floppy disk drive, the motherboard and the CPU already installed, I didn't actually get to install everything myself, but since I described each piece of hardware's function, I know more about it all.
  • I wanted to check the hard drive and see if there was an operating system on it or anything but the new computers came in and I didn't get that far before I picked another computer.

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.

  • Not only do I find programming to be enjoyable, but now I realize that I am interested in the separate pieces of the computer itself and not just the programs that run it. I really want to experiment more with computers and get more of an understanding of all of it.
opus/fall2012/jcavalu3/part3.txt · Last modified: 2012/12/02 20:53 by jcavalu3