Table of Contents

Part 3

Entries

Entry 1: November 2nd, 2012

In data structures this week we have been working on stacks and what not. We have to create a program that takes in data and spits it back out. It pretty much has been a work on stuff week and not much else has been progressed. I had to restart my program because it was not working the way i planned so i will start fresh! In data comm we actually are sending data through a string and 2 cups. We are going to see how well this goes.. we just need he cups. In hpc, i kind of stopped on the drum machine because i am making no progress what so ever so i have decided to undergo a new project but i dont know what yet!

Entry 2: November 9th, 2012

This week in data structures our stack program was due and it seems to be working out great. So i should be getting a good grade on it and such. We also started learning about makefiles, c standards and libraries. These will be very essential in bigger projects of programs when we are trying to organize all of our files and functions. Its kind of confusing but im sure i will understand eventually. In data comm we got the cups and string and now we have a program that will amplify the sound of data and another computer that will receive its sound through the microphone but instead of putting them close, we will send it through cups and string. It did not work too great, i mean we sent a picture at least. And for hpc i think my next project will be working on this computer i got. I was asked to fix it so i figured it would be a nice side project.

Entry 3: November 16th, 2012

This week for data structures we have been introduced to the binary search tree, its a way to search through a list of numbers or characters and even possibly organize these numbers if thats what you wish for your program to do. It seems like a lot of fun so i guess we will see how this goes! i need to do more research on it and see what i should do from here on out. In data comm we uh kind of failed at the cup thing so i think we are done with that, we have moved back to doing our usual things by working on asterisk and such. Hpc i have this computer and i am still testing the possibilities of why this computer will not turn on, its either the power cord or the motherboard. I need to use a volt meter on the cord next week to test to see if power is flowing so i can rule out simple possibilities and such.

Entry 4: November 23rd, 2012

This week of data structures we are still pretty much working on binary search tree and we had a knowledge assessment as well! I did really good except for some stupid mistake but thats ok i guess, but yea its pretty much just a work day on programs and such and nothing else really. The EOCE is on its way though so i have to get prepared for end projects and such so i need to get a move on with this search tree and that computer. The hpc and data comm eoce is not all that bad except i need to just so off a few projects i have so i need to go and collect all the data that i do have on the projects i have been doing so that shouldn't be too hard but we will see. But other then that its the end of the semester so i just need to finish up all of my projects and what not and im free :D

Keywords

Binary Search Tree

Definition

A binary search tree can also be named as a sorted/ordered search tree. Its a tree that has nodes that stem off into small search trees. It uses a linked list (doubly) that goes left and right. Numbers are placed in the nodes throughout the tree and with the correct algorithm it can traversed through going least to greatest or vice versa. Generally the left tree will have values that are less then the root (starting node) and the right tree will have values greater. The first node is called the root and the final nodes (depending on where it ends) are considered the leaves of the trees since that are the last on the tree.

References

data Keyword 3 Phase 2

tree rebalancing

Definition

In computer science, a self-balancing (or height-balanced) binary search tree is any node-based binary search tree that automatically keeps its height (number of levels below the root) small in the face of arbitrary item insertions and deletions. These structures provide efficient implementations for mutable ordered lists, and can be used for other abstract data structures such as associative arrays, priority queues and sets.

References

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

* Reference 2:wikipedia.com

Demonstration

One example of a self-balancing tree is an AA tree. AA trees require O(log(N)) bits of metadata per node, in the form of an integer “level”. The following is an example of a function that this tree would use, split:

function split is
    input: T, a node representing an AA tree that needs to be rebalanced.
    output: Another node representing the rebalanced AA tree.
 
    if nil(T) then
        return Nil
    else if nil(right(T)) or  nil(right(right(T))) then
        return T
    else if level(T) == level(right(right(T))) then
        We have two horizontal right links.  Take the middle node, elevate it, and return it.
        R = right(T)
        right(T) := left(R)
        left(R) := T
        level(R) := level(R) + 1
        return R
    else
        return T
    end if
end function

Opportunistic encryption

Definition

This word applies to any system thats connecting to another system and attempts to encrypt the communications channel otherwise falling back to unencrypted communications. This process requires no previous configurations of the two systems, so the OE process should run just fine on both systems.

References

datacomm Keyword 3 Phase 2

Virtual Private Network

Definition

A virtual private network extends a private network through a tunnel to other computers. It is highly secure and uses encryption to port network activity under a tunnel

References

Demonstration

Memory Module

Definition

A memory module is a really broad term for Ram or other integrated circuits that deal with some sort of memory. These are circuits that are mounted up on the motherboard or other places and it is mainly used for personal computers and laptop. Some specific types of memory modules are Dual inline package, transflash memory module, SIPP Memory, SIMM and DIMM. And what separates all of these are its volts, bits or storage.

References

Debugging

Definition

This is a process that a programmer or network administrator would do to determine a problem within in a program or network. Debugging happens by knowing the error codes or having a debugger installed that will pick apart programs. It can be a difficult time when there are many many different sub programs happening and what not. You need control flow, integration testing and more!

References

Demonstration

Not really a way to demonstrate except for following the steps to debug and find an error! here is a website that helps break it down:http://en.wikipedia.org/wiki/Memory_module

Experiment 3

Question

Can i assign a integer to a unsigned char in c?

Resources

Hypothesis

I believe this can be done in some possible way, i know you can do it in c++ so why not in c? :)

Experiment

I am going to test out a program that shows the normal way and what i want to do with the character type.

Data

#include <stdio.h>
int main()
{
unsigned char *A,*B;
unsigned char C='X';
int Integr_val=320;
B=&C ;
A=(unsigned char *)&Integr_val;
*B= Integr_val;
return printf("\n %c,%i\n %c,%i",*A *A,*B,*B);
}

output:

lab46:~/src/datastruc$ ./exper3

 @,64
 @,64
lab46:~/src/datastruc$

Analysis

Based on the data collected:

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.