Je veux demander que chaque fois que la langue de haut niveau est convertie en langue de bas niveau, est-ce que cela va se passer? Par exemple, si je vais convertir le langage de haut niveau suivant

while(LOCK!=0);
LOCK=1
\\Critical Section
LOCK=0

au langage d'assemblage suivant

Load LOCK,R0
Store #1,LOCK
Compare R0,#0
Jump step 1
\\Critical Section
Store #0,LOCK

au lieu de

Load LOCK,R0
Compare R0,#0
Jump step 1
Store #1,LOCK
\\Critical Section
Store #0,LOCK

Est-ce que ce serait faux? Depuis While, l'instruction consiste à charger, comparer et sauter des instructions ensemble. Mais comme vous l'avez vu, je dois appliquer TSL (Test and Set Lock) afin de synchroniser les processus. C'est pourquoi je pose cette question.

user218987
la source