Продать двойное слово в SPARC? - PullRequest
0 голосов
/ 17 февраля 2012

Есть ли способ сделать левый логический сдвиг для двойного слова в сборке SPARC?

У меня есть

ldd [%fp - 8], %l0

для загрузки 64-битного адреса памяти.Обратите внимание, что это не целое число, а просто последовательность байтов, поэтому левый логический сдвиг не действует как умножение.

Спасибо!

1 Ответ

1 голос
/ 17 января 2013

Основы организации и дизайна компьютеров Страница 988 (Вы можете найти это в книгах Google)

sllx Rs1,Rs2,Rd 

Влево сдвигает 64-битное значение Rs1 на 6 младших битов Rs2 и сохраняет его в Rd. Многие из инструкций из Sparc v8 снабжены постфиксом x для обозначения 64-битной версии этой инструкции. Например, sllx, srax, srlx

Кстати, я только что натолкнулся на этот документ, который, кажется, намного легче получить информацию из самого руководства Sparc v9 http://cs.anu.edu.au/techreports/2000/TR-CS-00-03.pdf

Надеюсь, это поможет. Это мой первый пост stackoverflow!

...