すみません、思いっきり初歩的な質問ですが2点ご教授願います。

$| = 1;
これはどういう意味でしょう?

print (pack 'H*', $1);
これも意味が分かりません。
H*は16進数文字列 (上位ビットが先)、だと思うのですが、$1は1文字???

Pascalでのプログラミングは慣れているのですが、Perlは初めてなので
どなたか教えてください。