x86-16

    2熱度

    1回答

    大部分歷史感興趣,如果我要爲彙編程序實現8086兼容性,什麼操作數被認爲對ESC指令有效? ESC opcode, source 從8086編程人員手冊我知道,opcode是在範圍0立即到63和source是寄存器或存儲器。但是什麼寄存器可以被編碼? reg8和reg16或只有reg16?如果source是內存,操作數大小(mem8或mem16)是否重要? 基本上,以上兩者並不真正從指令編碼的角度

    2熱度

    1回答

    我只是困惑,爲什麼我們應該初始化DS註冊這一切會: data segment msg1 db 10,13, "saisir le premier digit:$" data ends mov ax,data mov ds,ax` 當第一可變存儲其上存儲的數據段 所以是不是已經DS =數據 爲什麼我們要初始化DS =數據,如果他們已經同

    2熱度

    1回答

    編寫一個名爲SUB64的程序,從0x0160和0x0164中的64位整數中減去內存位置0x0150和0x0154中的64位整數。將結果存儲在內存位置0x0170和0x0174中。 我知道把它分成小塊的邏輯,因爲我們無法將64位寫入寄存器。我知道我們先減去最不重要的部分。我正在努力實際編碼。這與我們使用的GPIO有關係嗎?這是我的榜樣,所以也許你可以看到我在想什麼。也許我不是那麼遙遠,但感覺就像它。

    0熱度

    1回答

    據我所知,dos函數1等待輸入字符並將其放入寄存器AL中。 mov al,1h int 21h 這對我不起作用。它不會等待輸入,只需在AL中插入一個隨機ASCII碼。 如果我用AH修改AL,它應該可以正常工作。 mov ah,1h 這是爲什麼?

    2熱度

    2回答

    我現在遇到了一些問題,我不確定這是否是我的程序存在的問題,但這是我不是100%的一件事,所以我打算使用它作爲學習的機會。 我有這條指令:in al, 0x60從鍵盤讀取掃描碼。 我試圖將這個掃描碼發送到用C寫的函數。C函數聲明看起來像:void cFunction(unsigned int scancode)。 所以基本上,這裏是我在做什麼: in al, 0x60 movzx EAX, AL

    0熱度

    1回答

    我正在開發一個簡約的操作系統。我創建了一個MBR,查看Master Partition Table中的活動分區。我面臨的問題是扇區加載到內存。 對負載部門,我遇到了兩個方案, CHS尋址 LBA尋址 我讀了CHS是幾乎所有的BIOS支持,但問題的關鍵在於它最多可以解決8GB這個事實,這個缺點已經被LBA解決了。 與那些雖這麼說,我想請教一些問題: 問題1: 什麼方案是最好的選擇呢?如果CHS,我有

    1熱度

    1回答

    我正在建立一個小型操作系統作爲我自己的一個挑戰。我在網上閱讀了很多文章,說要覆蓋中斷向量表,您需要更改0000的物理地址:中斷號* 4和0000:(中斷號* 4)+2。 我寫下了一段完全相同的代碼,但試圖在虛擬機上運行它時,沒有任何反應。你們中的任何一個人可以分享他們的知識,並告訴我錯在哪裏?這是我的代碼: mov ax,0 mov es,ax mov ax,cs ;; set ax to t

    0熱度

    2回答

    我正在開發一個簡單的操作系統,只是爲了更好地瞭解它的內部。在開發Boot loader和在16-bit Real Mode上運行的簡單內核時,我遇到了陌生術語System Call和熟悉的Interrupt。 我一直在谷歌搜索的條款,因爲只發現概念仍然不清楚給我。據我所知,在least privileged mode中運行的應用程序使用系統調用來請求運行在Higher Privileged mod

    -1熱度

    1回答

    我寫了一個8086程序,並且據我所知可以正常運行,但是當它到達聲明變量的部分時,模擬器給我一個錯誤。當試圖運行線temp db 0x0F,模擬器說: unknown opcode skipped: 32 not 8086 instruction - not supported yet. 這裏是我的完整方案: org 100h mov ah, temp ;put variables into re

    -2熱度

    1回答

    我正在創建一個圖像文件(使用Imgburn),並且有一個部分我應該選擇平臺ID,並且選項是mac,8086和uefi。 我搜索了uefi的網絡,但我仍然無法知道要選擇什麼或有什麼區別。 uefi是什麼?我應該選擇8086和uefi之間的哪一個?