chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

計(jì)算機(jī)啟動(dòng)的細(xì)節(jié)與匯編Demo的拆解3

jf_78858299 ? 來源:酸奶蓋子 硬件底褲 ? 作者:酸奶蓋子 硬件底褲 ? 2023-02-01 15:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

打開文件,數(shù)據(jù)將以如下方式展示在我們面前。左邊是機(jī)器碼,右邊是反編譯文本。

![](https://file.elecfans.com/web2/M00/8C/10/poYBAGPaFpGAR9AzAAZJ9NhmHFY935.png)

很顯然,反編譯文本只是按照Ascii對二進(jìn)制數(shù)據(jù)進(jìn)行編譯,所以能夠很好地恢復(fù)出來。而剩下的因?yàn)樵贏scii表中沒有對應(yīng)的編碼,所以也就不能恢復(fù)出來。

在扇區(qū)末尾可以很明顯的看到55aa結(jié)束標(biāo)志,而在之間填充的0完全是times 510 - ($-$$)  db  0的功勞。如果不以0填充這些區(qū)域,程序拉起后的行為就不一定是我們所能夠預(yù)想的。

為了看懂剩下的區(qū)域內(nèi)容,使用ndisasm進(jìn)行反編譯。正常來說我們可以得到下列結(jié)果,而從7C28到7DFC中間的內(nèi)容不過是簡單重復(fù),沒有展示出來的必要。

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaFuCAfIGqAAJ5I1tjMnY660.png)

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaF3iAKiJpAABgkn3URW0184.png)

首先程序加載到7C00處,從這里進(jìn)行起跳;

然后數(shù)據(jù)對齊,并調(diào)用7C0B的程序;

7C0B命令裝載7c1E起始地址到ax,從1F到22要求端口傳輸字符串。

insb--輸入字符串到端口。

輸入字符串指令(Input String Instruction)。該指令是從某一指定的端口接受一個(gè)字符串,并存入一片存儲單元之中。輸入端口由DX指定,存儲單元的首地址和讀入數(shù)據(jù)的個(gè)數(shù)分別由ES:DI和CX來確定。在指令的執(zhí)行過程中,還根據(jù)標(biāo)志位DF對寄存器DI作相應(yīng)增減。該指令不影響任何標(biāo)志位。

Outsw—輸出字符串到端口。

輸出字符串指令(Output String Instruction)。該指令是把一個(gè)字符串輸入到指定的輸出端口中。輸出端口由DX指定,其輸出數(shù)據(jù)的首地址和個(gè)數(shù)分別由DS:SI和CX來確定。在指令的執(zhí)行過程中,還根據(jù)標(biāo)志位DF對寄存器SI作相應(yīng)增減。該指令的執(zhí)行不影響任何標(biāo)志位。

回到7C0E處,從0E1D內(nèi)容作用如上文一致,不再解析。

7C0A有一個(gè)短跳轉(zhuǎn)到7C0A,即是要程序在此循環(huán),可是該命令存在空耗計(jì)算機(jī)資源嫌疑。

至此整個(gè)程序解析完畢,而剩余沒有解析的部分希望看客自行查找資料,這對于學(xué)習(xí)匯編操作系統(tǒng)有好處。

三、運(yùn)行環(huán)境搭建
運(yùn)行環(huán)境使用VBox虛擬機(jī),也可以使用物理機(jī)驗(yàn)證。

Ⅰ.創(chuàng)建虛擬機(jī)。

新建

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaF4-AIzflAAH-Kl8AVto242.png)

按圖填寫,下一步

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaF5mAMMm5AAH0VhiVbWk346.png)

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaF8CAKNY4AAFSm8R45V8246.png)

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaF8uAb9M_AAGx-fcYXQs713.png)

![](https://file.elecfans.com/web2/M00/8C/97/pYYBAGPaF9WAUGwrAAGVnOqaEl4977.png)

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaGEiAFfRSAAIXroAAvMM634.png)

![](https://file.elecfans.com/web2/M00/8C/97/pYYBAGPaGEyAND-BAAFCpvdT4ss153.png)

最后點(diǎn)擊創(chuàng)建。

Ⅱ.裝載.bin文件到虛擬硬盤。

使用李忠老師開發(fā)的工具。

打開按照如下方式寫入即可。

![](https://file.elecfans.com/web2/M00/8C/97/pYYBAGPaGKOAHAMAAAD3x-j1MZA820.png)

Ⅲ.將盤片安裝到虛擬機(jī)。

![](https://file.elecfans.com/web2/M00/8C/11/poYBAGPaGMSAY2FDAAG-MpR2dw0920.png)

參考文獻(xiàn):

[1] General Software.[EB/OL]. https://cdn.embeddedts.com/resource-attachments/x86-edio-41.pdf

[2] 謝煥強(qiáng).精簡32Linux操作系統(tǒng)在X86上的設(shè)計(jì)與實(shí)現(xiàn)[D].2022.23-24.
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7809

    瀏覽量

    93234
  • 匯編
    +關(guān)注

    關(guān)注

    2

    文章

    214

    瀏覽量

    27435
  • 虛擬機(jī)
    +關(guān)注

    關(guān)注

    1

    文章

    972

    瀏覽量

    30493
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    計(jì)算機(jī)安全使用常識

    計(jì)算機(jī)安全使用常識 (1)使用符合額定電壓的電源。電壓高于額定電壓會燒毀硬件,低于額定電壓計(jì)算機(jī)不能正常啟動(dòng)或系統(tǒng)運(yùn)行不正常,甚至也會燒毀硬件。(2)正確開關(guān)計(jì)算機(jī)。正確的開機(jī)方法是:
    發(fā)表于 03-10 12:10

    什么是微型計(jì)算機(jī)?微型計(jì)算機(jī)有什么用處?

    匯編語言是什么?什么是微型計(jì)算機(jī)?微型計(jì)算機(jī)有什么用處?
    發(fā)表于 07-16 09:59

    什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?

    第一章 計(jì)算機(jī)系統(tǒng)概論1. 什么是計(jì)算機(jī)系統(tǒng)、計(jì)算機(jī)硬件和計(jì)算機(jī)軟件?硬件和軟件哪個(gè)更重要?解:P3計(jì)算
    發(fā)表于 07-22 09:06

    計(jì)算機(jī)組成原理 精選資料分享

    計(jì)算機(jī)組成原理第一章 計(jì)算機(jī)系統(tǒng)概述1.1 計(jì)算機(jī)系統(tǒng)簡介計(jì)算機(jī)系統(tǒng):硬件、軟件軟件:系統(tǒng)軟件、應(yīng)用軟件計(jì)算機(jī)系統(tǒng)的層次結(jié)構(gòu)(由高到低):高
    發(fā)表于 07-23 06:15

    計(jì)算機(jī)開機(jī)啟動(dòng)過程詳解 精選資料分享

    計(jì)算機(jī)的開機(jī)啟動(dòng)過程(1) 啟動(dòng)過程總攬(二)詳細(xì)說明1、CPU 供電按下主機(jī)的電源鍵后,計(jì)算機(jī)開始啟動(dòng),為主板部分芯片和CPU進(jìn)行供電。主
    發(fā)表于 07-23 09:18

    計(jì)算機(jī)組成期末復(fù)習(xí) 精選資料分享

    機(jī)D.計(jì)算機(jī)可實(shí)現(xiàn)高速運(yùn)算(c)2、計(jì)算機(jī)硬件能直接執(zhí)行的只能是下面哪項(xiàng)。A.符號語言 B.匯編語言C.機(jī)器語言 D.機(jī)器語言和匯編語言(c)3
    發(fā)表于 07-26 07:14

    微型計(jì)算機(jī)原理及應(yīng)用

    前言微機(jī)原理主要內(nèi)容包括微型計(jì)算機(jī)體系結(jié)構(gòu)、8088微處理器和指令系統(tǒng)、匯編語言設(shè)計(jì)以及微型計(jì)算機(jī)各個(gè)組成部分介紹等內(nèi)容。微機(jī)原理接口技術(shù)是一門實(shí)踐性強(qiáng)的學(xué)科,不但要求較高的理論水平,而且還要求有實(shí)際的動(dòng)手能力。這次項(xiàng)目設(shè)計(jì)的主
    發(fā)表于 09-10 07:38

    計(jì)算機(jī)應(yīng)用

    、計(jì)算機(jī)四代分別是:電子管計(jì)算機(jī),晶體管計(jì)算機(jī),小、中規(guī)模集成電路計(jì)算機(jī),大規(guī)模和超大規(guī)模集成電路計(jì)算機(jī)。
    發(fā)表于 09-10 08:17

    計(jì)算機(jī)組成原理與匯編語言程序設(shè)計(jì)

    計(jì)算機(jī)組成原理與匯編語言程序設(shè)計(jì)是為中央電大計(jì)算機(jī)組成原理與匯編語言程序設(shè)計(jì)課程編寫的教材。在開始學(xué)習(xí)本書之前,請大家務(wù)必先認(rèn)真閱讀這篇前言,它將告訴你本課
    發(fā)表于 10-21 17:56 ?0次下載
    <b class='flag-5'>計(jì)算機(jī)</b>組成原理與<b class='flag-5'>匯編</b>語言程序設(shè)計(jì)

    計(jì)算機(jī)組成原理與匯編語言習(xí)題一

    計(jì)算機(jī)組成原理與匯編語言習(xí)題一   硬盤低格格式化是對硬盤最徹底的初始化方式,經(jīng)過低格后的硬盤,原來保護(hù)的數(shù)據(jù)將全部丟失
    發(fā)表于 04-15 16:16 ?721次閱讀

    計(jì)算機(jī)的機(jī)器語言和匯編語言與高級語言的詳細(xì)資料介紹

    計(jì)算機(jī)語言通常是一個(gè)能完整、準(zhǔn)確和規(guī)則地表達(dá)人們的意圖,并用以指揮或控制計(jì)算機(jī)工作的“符號系統(tǒng)”。計(jì)算機(jī)語言通常分為三類:即機(jī)器語言、匯編語言和高級語言。
    的頭像 發(fā)表于 02-06 16:11 ?6766次閱讀

    構(gòu)建 4 位計(jì)算機(jī)匯編語言和匯編器(第 2 部分)

    一旦我們構(gòu)建了一臺計(jì)算機(jī),下一步就是開發(fā)一種匯編語言,然后是一個(gè)可以匯編我們程序的匯編器。 ? 在我 之前的專欄 中,我們介紹了在計(jì)算機(jī)內(nèi)存
    發(fā)表于 08-01 17:52 ?2498次閱讀
    構(gòu)建 4 位<b class='flag-5'>計(jì)算機(jī)</b>:<b class='flag-5'>匯編</b>語言和<b class='flag-5'>匯編</b>器(第 2 部分)

    構(gòu)建 4 位計(jì)算機(jī)匯編語言和匯編器(第 1 部分)

    我們已經(jīng)到了需要為 4 位 HRRG 計(jì)算機(jī)定義匯編語言的地步,但首先我們需要考慮某些概念。 如今,我們習(xí)慣于使用 C/C++、Java、Python 等高級語言對我們的計(jì)算機(jī)和微控制器進(jìn)行編程,但
    發(fā)表于 08-01 17:39 ?1516次閱讀
    構(gòu)建 4 位<b class='flag-5'>計(jì)算機(jī)</b>:<b class='flag-5'>匯編</b>語言和<b class='flag-5'>匯編</b>器(第 1 部分)

    計(jì)算機(jī)啟動(dòng)細(xì)節(jié)匯編Demo拆解1

    本文匯編程序是X86環(huán)境下的,移植其他平臺可能產(chǎn)生錯(cuò)誤。 一、匯編Demo解析 在前面的文章中建立了一個(gè)簡單的匯編Demo,令虛擬機(jī)
    的頭像 發(fā)表于 02-01 15:53 ?1335次閱讀
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>啟動(dòng)</b>的<b class='flag-5'>細(xì)節(jié)</b>與<b class='flag-5'>匯編</b><b class='flag-5'>Demo</b>的<b class='flag-5'>拆解</b>1

    計(jì)算機(jī)啟動(dòng)細(xì)節(jié)匯編Demo拆解2

    本文匯編程序是X86環(huán)境下的,移植其他平臺可能產(chǎn)生錯(cuò)誤。 一、匯編Demo解析 在前面的文章中建立了一個(gè)簡單的匯編Demo,令虛擬機(jī)
    的頭像 發(fā)表于 02-01 15:53 ?1152次閱讀
    <b class='flag-5'>計(jì)算機(jī)</b><b class='flag-5'>啟動(dòng)</b>的<b class='flag-5'>細(xì)節(jié)</b>與<b class='flag-5'>匯編</b><b class='flag-5'>Demo</b>的<b class='flag-5'>拆解</b>2