Поэтому флешка впаивается в плату с подмененной адресацией, потом вставляется в дампер и с помощью него уже прошивается.
мы видимо не так друг друга поняли.
процедура записи выглядит так: записываем по адресу 0xAAA байт 0xAA -> записываем по адресу 0x555 байт 0x55 -> записываем по адресу 0xAAA байт 0xA0 -> записываем по нужному адресу текущий байт нашего дампа
и вся это карусель продолжается пока не запишем последний байт нашего дампа (ещё выполняется проверка записи, но в для нашего примера её рассматривать не обязательно)
обрати внимание что на запись одного байта уходит четыре цикла и только последний это байт из записываемого дампа, а теперь представь что будет если перепутать адресацию, ты просто не сможешь выполнить первые три цикла
я так до конца и не разобрался с этой адресацией.
рассказчик из меня ещё тот, но всё же попробую
опустим то что память бита на сектора, то что сектора не обязательно одинакового размера и то что существует 16-ти битный режим, на данном этапе это только больше запутает.
представим нашу память как длинный массив ячеек, в каждой из них хранится один байт (8 бит), каждая ячейка имеет свой порядковый номер, для того чтобы обратиться к нужной ячейке надо выставить на адресных линиях номер этой ячейки.
тут необходимо обратиться к недрам своей памяти и вспомнить то чему учили на уроках информатики в школе, а именно к двоичной системе исчисления. На крайний случай сойдёт и виндовый калькулятор в режиме "Программист"
самая первая ячейка под адресом 0, в двоичном коде это будет выглядеть 000000000000000000000 , то есть для доступа к первой ячейки нам нужно на всех адресах выставить логический ноль (притянуть к земле), последняя ячейка в двоичном коде выглядит как 111111111111111111111, для доступа к последней ячейке нужно на всех адресах выставить логическую единицу (подтянуть к питанию), ну а если нам нужна к примеру 148-ая ячейка, то это будет выглядеть так 148-1(потому что нумерация с нуля)=147 dec=000000000000010010011 bin, где старший разряд A19, младший A-1