Как XOR между байтом и словом на PDP-11?

Основная проблема, с которой мы столкнулись, заключается в том, что одно число сохраняется как байт, другое — как слово, и мы понимаем, что в PDP-11 есть встроенная функция XOR.


person Sam12    schedule 17.12.2017    source источник
comment
stackoverflow .com/questions/4749585/   -  person Postica Ðenis    schedule 18.12.2017
comment
@PosticaÐenis Я думаю, что проблема пользователя в том, что он хочет сделать это на архитектуре PDP-11.   -  person Martin Rosenau    schedule 18.12.2017
comment
Так что нулевое расширение более короткого или обрезание более длинного.   -  person Peter Cordes    schedule 18.12.2017
comment
Байты на PDP-11?   -  person Martin Rosenau    schedule 18.12.2017
comment
@MartinRosenau: Что в этом странного? PDP-11 имеет 8-битные байты и 16-битные слова. Это не одна из тех старых архитектур с размером слова, не равным степени 2.   -  person Peter Cordes    schedule 18.12.2017
comment
@PeterCordes Хорошо. Спасибо. Я только что прочитал вашу ссылку. Я думал, что PDP-11 работает как другие компьютеры до процессора или современные TMS320, где память хранит не байты, а 16-битные слова (поэтому нет инструкций, которые могут обрабатывать байты).   -  person Martin Rosenau    schedule 18.12.2017
comment
@MartinRosenau: Ах да, верно, некоторые машины имеют память с адресацией только по словам (последним примером основного ЦП является ранняя версия DEC Alpha в начале 90-х, но также включая некоторые современные DSP) Но они все еще имеют байты, вам просто нужно загрузить + shift&mask, если вы хотите их отдельно. (Но в этом случае OP уже знал бы, как обращаться с байтами, используя полные регистры, чтобы сохранить байт в первую очередь)   -  person Peter Cordes    schedule 18.12.2017


Ответы (1)


Инструкция XOR на PDP-11 работает только с 16-битными словами.

Сначала вам нужно будет сделать 16-битное слово из байтового операнда. Является ли это нулевым расширением или расширением знака (может быть, SXT может помочь?), решать вам.

Затем примените XOR к аргументам из двух слов.

person Ray Toal    schedule 17.12.2017