x Turn on thread page Beta
 You are Here: Home

IB Computer Science SL/HL Study Group watch

Announcements
1. Hi 2 all computer scientists!

I am currently reviewing for the may 06 exams in computer science. I've heard that study groups are very beneficial, and since I am the only one taking computer science in my school, we might do an interactive study group on this thread where people can ask questions and give answers to questions in relation to computer science. What do you guys think?

Greets
2. Can someone explain me how check sums work?
3. Well if you want it in short:

Say you are transmitting a string. You convert each character to the appropriate ASCII code, then sum the up, and transmit the sum as an integer, in addition to the string which you break into packets blah blah standard transmission. On the other end, the receiving machine puts the packets back together to form a string, and then transforms it into ASCII codes again, sums them, and compares them against the sum it received separately. Or at least that's how I understood it.

The way I understand it, without parity checks ontop of the checksums, you can't really tell which character, let alone which bit the error occured in. This isn't etched in stone though, after all I only have a predicted 5 in HL Computer Science.

In addition, I don't really see whats to stop the sum itself from being corrupted. Once again, this is not etched in stone. I'm just giving you my understanding of them.

If you want me to elaborate on anything I've just said, ask away...

Hope I helped.

On a different note:

1) Could someone explain to me Big O notation as it refers to storage space / files?

2) Nyone up for explaining Karnaugh Maps to me? We were just told to look them up.. Well I did and its still chinese. anyone at least have a good reference to where I can read up on them? The logic itself isn't difficult Math is my strong suit, even Boolean math apparently. But wtf is up with these?

TYVM.
4. Isn't that what you call a check digit? e.g. you want to transfer 3456, so you add them which gives you 3 + 4 + 5 + 6 = 18 and you add those two terms again to give you a single digit 1 + 8 = 9. So you send the 9 with your above number. If however your number gets manipulated during transmission, the check digiti won't be 9 anymore.

However, the comp science uses block character checks as check sums, which I don't really understand how it works.. anyways

1) Doesn't BigO only refer to the number of comparisons made in an algorithm at the worst case? I guess for storage efficiency you gotta talk about how much space your data structure occupies in the memory, but I'm not quite sure

2) This online tutorial helped me alot: http://www.maxmon.com/kmaps1.htm
In the end, its up to you, whether you want to simplify using algebra or karnaugh maps. If you get used to kauraugh maps it gets really useful. In the subject guide it says, that we are required to know a maximum of 3 inputs, so i guess you don't have to worry about the 4 input ones.

See long
5. The we were told, a check digit, is, quite simply, the decimal equivalent (or variant, w/e) of a checksum. As far as I know, a Check Digit is also usually included in the number itself (the last digit of the ISBN number- the sum of all the individual digits(except last one) multiplied by decreasing integers beginning with 10 subtracted from w/e multiple of 11 is nearest that sum), while the checksum is sent separately....

1) Yes, for standard algorithms, BigO refers to the worst case scenario of how many comparisons/passes the algorithm has to make. There is also (only on Higher Level) BigO for file storage. A lesson I calmly slept through. -_-

2) That tutorial PWNED ALL! Thank you
6. Checksum is name for all methods how to discover if message was changed during transmision. Simplest way is one described in previous posts. There are of course some advanced algorithms. You do not have to send only one redundant byte of information as checksum. Checksums can be longer (you probably know MD5 or CRC or others). One of easy to understand methods of adding redundand information to transmitted data is Hamming's code (ssee here or in Wikipedia). It can detect one or two errors in message and even correct one error.
BigO notation comes from comparing of functions. If you have functions f(x) and g(x) then f(x) = O(g(x)) when there is some c that c*g(x)>f(x) (for all x bigger than some fixed x0. In computer science you express how fast algorithms are. It (also) expresses how much longer will the program run when input data will double. You define some operations that are considered basic (e.g. adding multiplying, comparing, assigning). Then you count how much of those operation you need when running program when input is of size n. YOu can do it for worst case or for average case (or for best, but that is not really useful). For example in bubblesort you have in worst case n comparisions for first element and n replacings. For second element you have at most n-1 comparisons and n-1 replacings (or swappings or whatever you call it). If you sum all operations it should give n2+n operations. Most often you cannot tell exactly how many. But here you know, that it is about square of how big the input was. So bubblesort has efficiency O(n2). You can do the same for memory: How much memory will you need if input has size n.
7. hey stevko, thanks man. you probly got a 7 in computer science

TSR Support Team

We have a brilliant team of more than 60 Support Team members looking after discussions on The Student Room, helping to make it a fun, safe and useful place to hang out.

This forum is supported by:
Updated: April 13, 2006
Today on TSR

Loughborough better than Cambridge

Loughborough at number one

Can I date a girl with no boobs?

Poll
Applying to university

Let our match making tool match you up with your ideal uni

Study Help rules and posting guidelines

Groups associated with this forum:

View associated groups

The Student Room, Get Revising and Marked by Teachers are trading names of The Student Room Group Ltd.

Register Number: 04666380 (England and Wales), VAT No. 806 8067 22 Registered Office: International House, Queens Road, Brighton, BN1 3XE