У вас есть идеи по поводу этой проблемы?
Вопрос:
Напишите и выполните программу сборки L C -3, которая объединяет две строки. Первая строка начинается с адреса памяти x4000, а вторая строка начинается с адреса памяти x5000. Строки всегда заканчиваются на 0.
Example:Before your program executes: M[x4000] = 5 M[x5000] = 6 M[x4001] = 2 M[x5001] = 1 M[x4002] = 8 M[x5002] = 8 M[x4003] = 4 M[x5003] = 0 M[x4004] = 0 After your program executes: M[x4000] = 5 M[x5000] = 6 M[x4001] = 2 M[x5001] = 1 M[x4002] = 8 M[x5002] = 8 M[x4003] = 4 M[x5003] = 0 M[x4004] = 6 M[x4005] = 1 M[x4006] = 8 M[x4007] = 0
Вот идея: напишите al oop, чтобы найти адрес первого нулевого слова, начиная с 0x4000. Как только вы нашли это, напишите еще один l oop, который будет копировать слова из 0x5000 и далее по этому адресу, заканчивая после копирования нулевого байта.