Вопрос

В настоящее время я работаю с компьютером sparc и пытаюсь узнать, является ли число простым или нет.

вот часть кода :

        mov     0,%y            
        mov     3, %l1
        nop
        nop
        nop

        sdiv    %l1,2,%l3
        rd      %y, %l6         
        cmp     %l6, 0          

Итак, в принципе, то, что мы имеем здесь, - это 3/2.Таким образом, должно быть напоминание о 1.Это напоминание должно быть внесено в реестр %Y.Но когда я смотрю на %Y, он по-прежнему равен 0.Почему %Y по-прежнему равен 0, в то время как он должен показывать мне напоминание о 1?

Это было полезно?

Решение

В соответствии с Руководство по архитектуре SPARC, страница 116, это вариант реализации, устанавливать ли %y в sdiv или нет.По-видимому, это также вариант реализации, независимо от того, реализовывать его аппаратно или программно, поэтому кажется, что некоторые программные реализации не устанавливают %y.

Другие советы

Пожалуйста, обратитесь к руководству SPARC V8, страница 115, для получения инструкции sdiv, процессор удалит остаток.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top