ПИПЕЦ!!!!! просото пипец!!!
вы что нибудь про шины адреса знаете? если у вас шина 2 бита и программа занимает адреса 0, 1, 2, 3
то запись в адрес 4, 5, 6, 7 - это запись в 3 битную шину 4 = 100 5 = 101 6 = 110 7 = 111 , а теперь представьте что это 3 бита выставлдяются на 2 битной шине, что будет, откинеться старший бит и что убдет? 100 = 00 101 = 01 110 = 10 111 = 11 понято что стало? 0 1 2 3
когда у вас что-то за пределами РАМ для ниос, это что-то ограничено разрядностью шины адреса, и запись туда, это запись в младшие адреса.
Нельзя так делать, нельзя писать туда, куда надеетесь программа не дотянется! Для этого есть линкеры, можно выделить область памяти, регион, запретить линкеру туда лезть, и использовать для своих нужд, зная что там точно не будет программы, но только так! никак иначе...
Можно взять большой массив выделить 1000 элементов, и по указателю обращаться в него как в память, и знать что это не загадиться, а так как вы решили эту проблемму - это ПИПЕЦ!!!!
|