получается, что нули спереди, это не результат перебора nonce,
Нужно подобрать такой nonce, чтобы хеш заголовка блока был меньше либо равен target. Если, к примеру, target имеет 10 нулей спереди, то и хеш заголовка блока должен иметь 10 или более нулей спереди. Поэтому нули спереди в результирующем хеше - это именно результат перебора nonce.
а просто потому что мы 16-ю систему перевели в 256 и в начале автоматом выставились нули?
Ничего никуда не перевели. Вы путаете основание системы счисления (16) и разрядность (256), что странно, для человека, изучающего программирование.
то есть смысл nonce, просто перебирать числа, чтобы наше число оказалось меньше числа таргет и чем меньше таргет, тем соответственно больше в начале нулей, так как отображение 256 бит!
Как-то так. Но фраза про 256 бит была лишней, так как это справедливо для любой разрядности. Число 0099 меньше числа 9999, поэтому у числа 0099 больше нулей спереди, чем у числа 9999.