2009-09-27 6 views
2

Je travaille actuellement avec un ordinateur sparc et j'essaie de savoir si un nombre est premier ou non.sparc assembly et le registre y y

ici est une partie du code:

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

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

Alors basiquement ce que nous avons ici est 3/2. Il devrait donc y avoir un rappel de 1. Ce rappel devrait être mis dans le registre% Y. Mais quand je regarde% Y, il est toujours à 0. Pourquoi% Y reste-t-il à 0 alors qu'il devrait me montrer un rappel de 1?

Répondre

4

Selon le SPARC Architecture Manual, page 116, il s'agit d'une option d'implémentation permettant de définir ou non% y dans sdiv. Apparemment, c'est aussi une option de mise en œuvre, qu'il s'agisse de l'implémenter dans le matériel ou le logiciel, il semble donc que certaines implémentations de logiciels ne définissent pas% y.

0

Veuillez vous reporter au Manuel SPARC V8 page 115, pour l'instruction sdiv, l'UC abandonne le reste.

Questions connexes