В Z80 я полный ноль, я не знаю как там распределяется адресное пространство и сколько максимально можно адресовать за раз, но относительно x86 могу сказать так: 1) для определения общего кол-ва памяти: записываем паттерн 55AAh в начало каждого 16Кб блока. Считываем из начала блока значение. Если значение не равно 55AAh - все, память кончилась. Иначе - прибавляем к адресу 16Кб и ушли на цикл.
2) для тестирования памяти алгоритм примерно тот же, только я тестирую 1Кб блоками. 4 хороших паттерна есть - 55h (10101010 bin), AAh (01010101 bin), FFh (11111111 bin) и 00 (00000000 bin). Заполняем первый килобайт поочередно этими паттернами, потом считываем из первого килобайта и сверяем с паттерном. Если где-то не сошлось - значит ошибка. Дальше берем второй килобайт и по новой.




Ответить с цитированием
Размещение рекламы на форуме способствует его дальнейшему развитию 
