以輸入我已經得到了需要從鍵盤輸入並打印在屏幕上,但我有問題的理解代碼的幾行程序,從大會(TASM)鍵盤
這裏代碼,
MOV DS, AX
MOV ES, AX ;Why Move AX content to ES ???
MOV DX, OFFSET PNAME ; PRINT NAME:
MOV AH, 09H
INT 21H
MOV BYTE PTR SNAME, 21
MOV DX, OFFSET SNAME
MOV AH, 0AH
INT 21H
MOV SI, 0002
LEA DX, SNAME[SI] ; PRINT NAME ENTERED
MOV AH, 09H
INT 21H
爲什麼我們首先移動大小字節的21到SNAME ???? 如何將鍵盤輸入中斷服務的結果自動存儲在SNAME而不是AL中?
如果您調用1H(從輸入設備讀取一個字符),您會期望AL中的輸入。在這裏,您正在向標準輸出設備(9H)打印一個字符串,然後您正在從標準輸入設備(0AH)讀取一個字符串,然後打印收到的輸入。 – martincho
爲什麼我們首先將21個大小字節移動到SNAME? – micheller