2012-09-06 29 views
0

我在輸入的字符中有點困惑。當我輸入一個字符時,輸入的字符被存儲在al中。那麼,輸入字符的格式是什麼?它是十六進制還是十進制?彙編:輸入字符的格式

我需要知道,因爲我會在嵌套循環使用。這是我第一次在循環中使用輸入的字符作爲限制器。

謝謝! :)

回答

2

十六進制,十進制,二進制等只是代表數據的方式。如果輸入的ASCII字符「A」到寄存器AL它具有相同的值,而不管表示的,即寄存器AL包含65(十進制),其是相同0x41(十六進制)或01000001b(二進制)。換句話說,它是在寄存器中的相同位模式,它只是取決於你如何選擇代表它。

+0

當我輸入一個數字,它是在ASCII,而不是整數。嗯。如果我在這裏添加簡單的代碼,可以嗎? (我問上述問題的原因)我不知道爲什麼當我放置al時不能正常工作,但是當我用特定的ASCII字符替換al時,它工作正常。 – shriekyphantom

+1

@shriekyphantom:問題是,字符「A」只有*一個值,65(十進制)。所以即使有些程序員稱它爲65,其他程序員也稱它爲0x41,而其他的則稱爲0b010000001。關鍵是,價值是一樣的。 (儘管在技術上,計算機上的所有數字都是二進制的)。 – Linuxios

+0

現在沒事了。我剛剛瞭解到你不能在迭代中使用al。感謝您的回覆。 :) – shriekyphantom