includes?

Hi!
I got an example about online assembler and port manipulation from somewhere and modified it a bit
My code dosn't actually do anything. The only reason I show it here is that the original code had the following includes:
#include <avr/io.h>
#include <avr/interrupt.h>

My code doesn't have the includes but still compiles without error messages, so I guess the inline assembler and port manipulations and my AtMega2560 port names are already included in my Arduino software.
So how do I know when I need to an avr library included, and where do I download them??

My nothing-doing code:

int i=0;
const int LedPin = 13;
const int StartPin = 12;

void setup() {
//Initialize serial and wait for port to open:
pinMode(LedPin,OUTPUT);
pinMode(StartPin,INPUT_PULLUP);
cli();
TCCR1A = 0;
TCCR1B = 0;
sei();
asm("cli\n nop\n nop\n nop\n sei\n");
Serial.begin(9600);
}

void loop()
{
//do something
}

So how do I know when I need to an avr library included

When the code fails to compile without them.

and where do I download them??

You don''t!! They come with the IDE..

(Is the double punctuation really useful??)