我想翻譯一個C程序。目標語言並不重要,我只是想了解程序的每個部分都在做什麼。將C程序翻譯成其他編程語言
我找不到任何細節:
variable=1;
while(variable);
我明白,這是一個循環,這是真的(我已經閱讀這裏居然被執行的代碼堆棧溢出類似的問題),但在這種情況下,沒有與此相關的代碼。所以我想知道,這個程序是否在「睡眠」 - 而這個正在執行?
然後,另一部分我不明白的是:
variable=0;
variable=variable^0x800000;
我認爲值應爲24位,但這個真的需要在任何其他的編程語言,是不是低級別爲C?
非常感謝
循環是一個無限循環,除了佔用CPU週期之外什麼都不做。最重要的是,它*不會讓進程進入睡眠狀態,這是一個忙碌的等待循環,儘可能多地使用CPU時間。至於另一件事情,這取決於。除非您知道源語言和目標語言,否則您無法進行任何翻譯,您需要了解它們。 –
@Someprogrammerdude謝謝。我無法真正相信這是「無用的」。這是寫在一個流行的硬件芯片的文件: - /爲什麼他們會使用,如果唯一的目的是使用CPU ... – MeV
如果變量是易失性的,某種中斷設置變量= 0,循環可以退出...;) – LPs