;the code read 4 bytes from file and print it on screen
bits 16
org 100h
jmp start
filename db 'example.file',0
handle dw 0
buffer db 255
start:
mov ah,3dh
mov al,0
mov dx,filename
int 0x21
mov handle,ax
mov ah,3fh
mov cx,4
mov dx,buffer
mov bx,handle
int 21h
mov dx,buffer
add dx,ax
mov bx,dx
mov byte[bx],'$'
mov dx,buffer
mov ah,9
int 21h
mov ah,4ch
int 21h
0
A
回答
0
您的緩衝區看起來是單個字節。如果你真正想要的是255個字節數組,那麼你應該使用(假設這是NASM):
buffer: times 255 dup 0
此外,如前所述,您應該使用括號在NASM代碼訪問的價值指向由一個地址。只要mov ax,foo
將foo的地址放入ax,而不是存儲在該地址的值。
+0
確實如此,但有足夠的未使用(已執行)代碼來適應正在讀取的4個字節。所以,緩衝區的大小本身就不成問題。 – 2012-07-14 18:12:59
+0
如果他還像另一位評論者那樣將方括號放在句柄的旁邊,則表明它應該可以工作,假定該文件存在。 – Michael 2012-07-14 18:29:13
相關問題
- 1. 以下文件編寫代碼有什麼問題?
- 2. 以下URL編碼有什麼問題?
- 3. 以下Python代碼有什麼問題?
- 4. 以下代碼有什麼問題?
- 5. 以下C代碼有什麼問題
- 6. 以下代碼有什麼問題?
- 7. 以下C代碼有什麼問題?
- 8. 以下代碼段有什麼問題?
- 9. 彙編代碼問題
- 10. Android讀取文件的編碼問題
- 11. 下面的代碼有什麼問題?
- 12. 下面的代碼有什麼問題?
- 13. 下面的代碼有什麼問題?
- 14. 以下彙編代碼是做什麼的?
- 15. Y86彙編代碼編譯問題
- 16. 打開優化讀取彙編代碼
- 17. 代碼有什麼問題
- 18. 代碼有什麼問題?
- 19. 代碼有什麼問題
- 20. 下面的代碼有什麼問題?這不是編譯
- 21. 閱讀彙編代碼
- 22. 以下代碼中的LayoutInflator.Inflate方法有什麼問題?
- 23. 以下合併排序數組C++代碼有什麼問題?
- 24. 路徑依賴類型 - 以下代碼有什麼問題?
- 25. Excel宏的以下VBA代碼有什麼問題?
- 26. 以下tensorflow代碼的batch_size有什麼問題?
- 27. 問題彙編代碼,計算階乘
- 28. 彙編語言代碼問題
- 29. 反彙編託管代碼問題
- 30. 長的彙編代碼問題
代碼正在打印垃圾。我認爲問題是在mov mov handle,ax ....中,但我無法弄清楚。 – divanshu 2012-07-14 16:31:41
用'mov [handle],ax'可能會更好。然後'mov BX,[處理]'。我們必須得到一個內存地址或存儲在地址上的值。 – 2012-07-14 16:42:08
單步執行代碼。是否將正確的數據讀入緩衝區? – 2012-07-14 16:52:30