Да задача! Это сколько нужно "прокрутить", чтобы разобрать, что 1 байт = 1 символ (unicode = 2), в килобайте = 1024 байта, и решить, сколько будет в файле с 4 000 000
строк, не говоря о том, сколько в каждой строке символов?
Реально, мне так кажется, если нужно исключительно "8" на "9", то зачем такой расширенный алгоритм? FOR всегда и во всех языках была медленной командой и наверное, лучше использовать SET - не утверждаю и с командами DOS давно не работал, поэтому, просто, как ожидание развернутой подсказки от профи и повышения собственного уровня.