ShellCodeis nothing but set of machine instructions which you normally write so that when you gain control over vulnerable program that program will redirect EIP to the shellcode(basically instructions written by author to do something) and then those instructions will get executed instead of actual program code.
Lets say your computer is having Winamp installed which is vulnerable.
now did you seen any option in winamp to launce calc.exe?? NO
but as the winamp is vulnerable, so what you can do is create exploit in which you will insert shellcode which is nothing but instructions to execute calc.exe
so when you use this exploit what it will do is copy your shellcode somewhere in memory then control your program(winamp) and ask it to jump on a memory location where your shellcode is placed so once it take jump to your shellcode it get executed and you see calc.exe running on your computer.
Regardz TO real Aurther.