16進数のテーブル表


10進を16進数に変換した一覧表をテキストファイルに出力して作成したいです。  
できれば、項目もつけて。  
下記の九九表みたいな感じに。

[code]

    for (my $i = 1; $i <= 9; $i++ ) {
        for (my $o = 1; $o <= 9; $o++) {
            my $a = $i * $o;
            printf("%2d ", $a);
        }
        print "\n";
    }
    
[/code]

現在下記まで書いたのですが、  
読み込みが遅いうえ、コンソールに表が表示されません（たぶん数列の羅列になってます）。

[code]

    for ( my $num10 = 0 ; $num10 <= 1023 ; $num10++ ) {
        for ( my $num16 = 0 ; $num16 <=1023 ; $num16++ ) {
            printf $f , "%4d ", $num16;
        }
     # print $num10,"\n";
    }
    
[/code]

以上、よろしくお願いします。




こんな感じ？

[code]

    open (my $f, ">", "table.txt") or die "cannot open texfile : $!\n";
    printf $f "%4s", "";
    for ( my $num10 = 0 ; $num10 < 32 ; $num10++ ) {
        printf $f "%3d ", $num10;
    }
    for ( my $num16 = 0 ; $num16 <=1023 ; $num16++ ) {
        printf $f "\n%3d ", $num16 / 10 if $num16 % 10 == 0;
        printf $f "%03x ", $num16;
    }
    
    close($f);
    
[/code]




こんな感じ？

[code]

    open (my $f, ">", "table.txt") or die "cannot open texfile : $!\n";
    printf $f "%4s", "";
    for ( my $num10 = 0 ; $num10 < 32 ; $num10++ ) {
        printf $f "%3d ", $num10;
    }
    for ( my $num16 = 0 ; $num16 <=1023 ; $num16++ ) {
        printf $f "\n%3d ", $num16 / 10 if $num16 % 10 == 0;
        printf $f "%03x ", $num16;
    }
    
    close($f);
    
[/code]

