window下進(jìn)程調(diào)試基礎(chǔ)知識(shí)(有彩蛋哦!)

年前最后一篇组去,要整點(diǎn)有深度的鞍陨,后面再加一個(gè)彩蛋,不錯(cuò)不錯(cuò)不錯(cuò)……从隆!

先扯點(diǎn)題外話诚撵!

下班路過有人圍觀看煙花,一個(gè)哥們一臉不屑的說“有什么好看的键闺?浪費(fèi)錢還污染環(huán)境”寿烟,旁邊一個(gè)妹子一臉鄙視地回應(yīng)“你喜歡看美女不?”……我默默看著那個(gè)哥們低著頭離開了辛燥,看了一眼妹子筛武,又看了一眼煙花,我默默的照了一張相挎塌,隨后閃人徘六!

……………………………正文分割線………………………

先介紹幾個(gè)windows下的進(jìn)程調(diào)試器:ollydbgPyDbg榴都、Immunity debugger

寄存器可以被認(rèn)為是位于CPU上的小型存儲(chǔ)器待锈,CPU獲取數(shù)據(jù)最快的方式就是直接訪問寄存器。在x86指令集中缭贡,一個(gè)CP具有8個(gè)通用寄存器:EAX炉擅、EDX、ECX阳惹、ESI谍失、EDI、EBP莹汤、ESP快鱼、EBX。

EAX寄存器也被稱為累加器纲岭,用于協(xié)助執(zhí)行一些常見的運(yùn)算操作以外用于傳遞函數(shù)調(diào)用的返回值抹竹。在X86指令集中很多經(jīng)過優(yōu)化的指令會(huì)優(yōu)先將數(shù)據(jù)寫入或者獨(dú)處EAX寄存器,在對數(shù)據(jù)進(jìn)行進(jìn)一步的計(jì)算止潮。大多數(shù)基本的運(yùn)算操作如:假發(fā)窃判、減法和比較運(yùn)算都會(huì)借助使用EAX寄存器來達(dá)到指令優(yōu)化的效果。還有一些特殊指令如:乘法和除法則必須在EAX寄存器中進(jìn)行喇闸。

若之前所屬袄琳,函數(shù)調(diào)用的返回值被儲(chǔ)存在EAX寄存器中询件。牢記這一點(diǎn)很重要,你可以基于存儲(chǔ)在EAX中的值來判斷一個(gè)函數(shù)調(diào)用所執(zhí)行的操作是成功還是失敗了唆樊。除了布爾類型的返回之外宛琅,EAX中存數(shù)的也可能是一個(gè)確切的函數(shù)返回值。

EDA是一個(gè)數(shù)據(jù)寄存器逗旁,這個(gè)寄存器可以被認(rèn)為是EAX寄存器的延伸部分嘿辟,用于協(xié)助一些更為復(fù)雜的運(yùn)算指令,如:乘法和除法片效,EDA被用于存儲(chǔ)這些指令操作的額外數(shù)據(jù)結(jié)果红伦。EDA也可以用于通用目的的數(shù)據(jù)存儲(chǔ),但是其最常見的用法是和EAX寄存器聯(lián)合使用堤舒,以協(xié)助執(zhí)行這類更復(fù)雜的元算色建。

ECX寄存器也被稱為計(jì)數(shù)器,用于支持循環(huán)操作舌缤,存儲(chǔ)一個(gè)字符串或者進(jìn)行計(jì)算就是典型的循環(huán)操作箕戳。需要特別注意的是ECX寄存器通常是反向計(jì)數(shù)的,而非正向計(jì)數(shù)国撵。我們用以下的Python代碼片段來向你說明這個(gè)問題陵吸。

在x86匯編語言中,那些涉及數(shù)據(jù)處理的循環(huán)操作依賴于ESI和EDI這兩個(gè)寄存器介牙,以實(shí)現(xiàn)高效的數(shù)據(jù)操作壮虫,ESI寄存器也被稱為源地址寄存器,這個(gè)寄存器存儲(chǔ)著輸入的數(shù)據(jù)流的位置信息环础。EDI寄存器則指向相關(guān)數(shù)據(jù)操作結(jié)果的存放位置囚似,我們稱之為目的變址寄存器,可以簡記為ESI用于“讀”线得,而EDI用于“寫”饶唤。在數(shù)據(jù)操作過程中使用源變址索引和目的變址寄存器可以極大提高程序運(yùn)行的效率。

ESP和EBP寄存器分別被稱為棧指針和基址指針贯钩,這些寄存器用于控制函數(shù)調(diào)用和相關(guān)的棧操作募狂。當(dāng)一個(gè)函數(shù)被調(diào)用時(shí),調(diào)用參數(shù)連同函數(shù)的返回的地址將先后被壓入函數(shù)棧中角雷,ESP寄存器始終指向函數(shù)棧的最頂端祸穷,有此不難推斷出在函數(shù)調(diào)用過程中的某一時(shí)刻,ESP指向了函數(shù)的返回地址勺三。EBP寄存器被用于指向函數(shù)棧的低端雷滚。在某些情況下,編譯器為了指令優(yōu)化的目的可能會(huì)避免將EBP寄存器用作棧指針吗坚。在這種情況下揭措,被釋放出來的EBP寄存器可以向其他任何一個(gè)通用的寄存器一樣另左它用胯舷。

EBX寄存器是惟一一個(gè)沒有被指定特殊用途的寄存器刻蚯,它可以被作為額外的存儲(chǔ)單元來使用绊含。

另外一個(gè)應(yīng)當(dāng)被提及的寄存器是EIP寄存器。這個(gè)寄存器始終指向當(dāng)前正在執(zhí)行的指令炊汹,當(dāng)CPU穿行于二進(jìn)制代碼中時(shí)躬充,EIP寄存器中的值隨之更新以實(shí)時(shí)的反映當(dāng)前代碼所執(zhí)行到的位置。

一個(gè)調(diào)試器應(yīng)當(dāng)能夠輕易的讀取和修改這些寄存器的內(nèi)容讨便,每一個(gè)操作系統(tǒng)都會(huì)提供一個(gè)接口做組來使得調(diào)試器能夠與CPU進(jìn)行交互充甚,以獲取或修改這些寄存器中的值。

…………………………………分割線…………………………………

不知道有多少人會(huì)看到這里霸褒!

總結(jié)下這一年吧伴找!好像好上一年也沒有太大變化,體重還是那樣废菱!那就這樣吧技矮,也沒啥寫的了!

最后來一個(gè)彩蛋殊轴!

這一年衰倦,感觸還是挺多的,作為過來人旁理,給還沒工作和剛開始工作的人一點(diǎn)意見吧樊零!

1、工作不要給自己定下太高的目標(biāo)孽文,除非你真的有做一番事業(yè)的心驻襟,并打算為夢想去努力,否則很可能一身疲憊芋哭,還搞得自己很自卑沉衣,其實(shí)我們大部分人真的都只是蕓蕓眾生中最普通的一個(gè),扔在人群中甚至很難被找到楷掉!也許有人會(huì)說做人要上進(jìn)厢蒜?這里我問一下,上進(jìn)想要得到的是什么烹植?若只是從小被灌注的上進(jìn)思想斑鸦,或者說是上進(jìn)是給其他人看的,那這樣的上進(jìn)是一種困住人的枷鎖草雕!當(dāng)然巷屿,若是你有著很明確的目標(biāo),明確知道自己奮斗拼搏的是什么墩虹,那放手去博吧嘱巾,苦和委屈全部吞進(jìn)肚子憨琳,只要不是特別“笨”,我相信五年十年后肯定有收獲的旬昭,至于這五到十年失去的東西就不要去追憶了篙螟!

2、不要給自己定太高目標(biāo)……是不是等于不思進(jìn)取了问拘?肯定不是啊遍略,其實(shí)生活中很多東西,尤其是見識(shí)和知識(shí)都是日積月累起來的骤坐,只要你認(rèn)真去做一件事去積累绪杏,五年十年后你能夠了解到的東西絕對比你想象的多得多,所以給所有人一個(gè)建議纽绍,沒啥事的時(shí)候多看看書蕾久,各行各業(yè)都可以涉略下,對什么感興趣對什么好奇看什么就可以拌夏,當(dāng)然小說這個(gè)東西不算吧(雖然我是寫小說的,但……你懂得辖佣,大部分小說沒什么營養(yǎng))郭脂,隨著知識(shí)的積累婆排,很多感覺神秘的東西、技術(shù)被揭開面紗,那種感覺我覺得很爽笆实丁噪裕!偶爾還可以賣弄下嚎幸!

3珊随、這兩年互聯(lián)網(wǎng)熱,薪資高污淋,很多喜不喜歡這個(gè)行業(yè)的人都進(jìn)來了顶滩,我不否認(rèn)這個(gè)行業(yè)是我們窮人家出身的孩子快速積累財(cái)富的一個(gè)途徑……怎么說呢?對于已經(jīng)踏上這個(gè)行業(yè)的人已經(jīng)沒什么可說的了寸爆,唯一說的(也是對自己說的)礁鲁,多多運(yùn)動(dòng)吧(動(dòng)腦多,體力勞動(dòng)少赁豆,容易猝死

仅醇,容易肥胖),為了能夠讓自己多活幾年魔种,沒準(zhǔn)多活一年就能夠見證人類科技的突破析二,沒準(zhǔn)人就可以不死了!對于沒入行的,還在大學(xué)中的叶摄,建議你們多找找掙錢的路子属韧,我覺得其實(shí)還是很多的,大學(xué)真的是能夠嘗試一些想法的最好時(shí)間段蛤吓,一旦錯(cuò)過就不會(huì)再有了宵喂!當(dāng)然你當(dāng)真沒什么想法,只是想找一份養(yǎng)活自己的工作柱衔,也沒必要排斥程序員樊破!程序員的特點(diǎn)就是“掙得多、花的少唆铐、死的早!”奔滑,開玩笑艾岂,我覺得程序員也不見得花的少,死的早朋其,掙得和有些行業(yè)比起來根本不值得一提王浴!寫代碼時(shí)我最煩的是需要處理的邏輯太復(fù)雜,項(xiàng)目規(guī)劃太混亂梅猿,開發(fā)時(shí)間不給夠氓辣,由于項(xiàng)目底子沒打好、水平限制袱蚓、項(xiàng)目迭代過快線上老是出問題钞啸,需要24小時(shí)待命解決問題!唉喇潘!不過那個(gè)行業(yè)底層人員都不容易体斩,為了支撐上層人員的夢想,底層人員只能付出辛苦颖低!

4絮吵、昨天看了一個(gè)有關(guān)人類的紀(jì)錄片,看到第三世界的人們還未解決溫飽問題忱屑,看到身處戰(zhàn)爭中的人失去所有至親蹬敲,輾轉(zhuǎn)逃到多個(gè)國家,結(jié)果卻是一再被驅(qū)逐莺戒,對著屏幕他要求很簡單伴嗡,他不求當(dāng)?shù)卣o予他什么,只求當(dāng)?shù)卣軌蜃屗钤谀抢镌嗵海菍λ麃碚f已是奢望闹究!一個(gè)孩子的父親,每次拿起槍內(nèi)心就充滿了畏懼食店,他怕戰(zhàn)爭中自己死在他人手上渣淤,也怕有人死在他的手上赏寇,但他又不得不拿起槍,為了自己的家園价认,為了自己的家人嗅定!看了這些,我告訴自己我又有什么可以抱怨的呢用踩?今天中午吃飯回來碰到技術(shù)部老大渠退,和他聊到這些,他說我們就悶頭活著吧脐彩,讓自己活的好些碎乃,讓自己的家人活的好些!沒錯(cuò)惠奸,這就是我應(yīng)該做的梅誓!改變不了世界,改變不了很多事情的我佛南,至少可以盡我所能讓家里人生活的好些梗掰!還能盡些綿薄之力幫助下困難的人!今年嗅回,我一共捐出去900左右及穗,其中一件讓我感動(dòng)的事,我們學(xué)校一個(gè)校友白血病绵载,學(xué)校幫忙籌款埂陆,預(yù)計(jì)籌款60萬,最后籌款72萬多尘分!感動(dòng)猜惋,心里溫暖,這是我一個(gè)眾多參與者的內(nèi)心最直接的反應(yīng)培愁,那位校友和他的家人更加不用說了著摔,也許錢不能真正的解決他的問題,但至少能夠讓他在這個(gè)寒冷的冬天感到溫暖定续,我想那也將轉(zhuǎn)換成他對抗病魔的一種力量谍咆!

5、生活也許比我們想象的簡單很多私股,當(dāng)然也可以比我們想象中的復(fù)雜很多摹察!簡單還是復(fù)雜一半是社會(huì)決定的,一半取決于我們自己倡鲸,生活中的各種世俗供嚎、各種枷鎖能卸掉就卸掉吧!不去攀比,不去掙沒必要的面子克滴,不去急功近利的逼争,做好自己的,自己劝赔、家人誓焦、在乎的人平安健康就是最簡單最真的幸福!

6着帽、財(cái)富的積累杂伟!我現(xiàn)在隱約覺得這件事是水到渠成之事,不奢侈不亂花仍翰,可能除了買房(車不知道算不算赫粥,我覺得不算必需品)有些壓力,生活其實(shí)沒什么壓力歉备。算一筆賬傅是,現(xiàn)在一個(gè)月4000應(yīng)該很平常(算不上高)的薪水了吧(北上廣除外),到手的差不多3000多些吧蕾羊,兩個(gè)人的話,一個(gè)月有6000帽驯,必要開銷3000應(yīng)該差不多了吧……忘記一個(gè)東西了龟再,首付這個(gè)東西,若是家里條件不錯(cuò)尼变,可以幫忙出了會(huì)更好利凑,不能出的話那可能要找一份相對高薪點(diǎn)的工作了……假設(shè)家里出了首付的錢,公司走正常的五險(xiǎn)一金嫌术,貸款年限長一點(diǎn)哀澈,住房公積金外也不用交什么錢!最主要的是你不可能一直都是4000的薪水度气,若是你一直都是4000的工資割按,我覺得真的是不漲薪(心)啊磷籍!若是首付家里沒有辦法适荣,自己就努力下,咬牙一年在工作中學(xué)習(xí)院领,升職加薪不是難事弛矛,攢個(gè)三五年也不是難事!當(dāng)然這樣經(jīng)歷三五年后你的眼界可能就不一樣了比然,也許你就不會(huì)傾向安穩(wěn)丈氓,向我一樣用最笨的日積月累來積累財(cái)富了!

上面的計(jì)算若是有誤的話請見諒,由于這個(gè)計(jì)算沒有什么考證万俗!

7湾笛、扯得差不多了,最后提前祝大家新年快樂该编,工作中有封版一說迄本,這篇日志就是我今年的“封版”了,過年的時(shí)候做的兩個(gè)活動(dòng)會(huì)推出來(為了保證我們能夠第一時(shí)間響應(yīng)線上問題课竣,公司特意給配了無線網(wǎng)卡嘉赎,我不知道我應(yīng)該感到開心還是不開心?)于樟,希望不要出什么問題公条,讓我過一個(gè)“平平淡淡”的春節(jié),以便我年后有一個(gè)不錯(cuò)的心情投入2016年的“戰(zhàn)斗”迂曲!

最后不知道有多少人看到這里了靶橱,看到的人麻煩留下點(diǎn)什么,一個(gè)贊或者一條評(píng)論都可以路捧!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末关霸,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子杰扫,更是在濱河造成了極大的恐慌队寇,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件章姓,死亡現(xiàn)場離奇詭異佳遣,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)凡伊,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門零渐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人系忙,你說我怎么就攤上這事诵盼。” “怎么了笨觅?”我有些...
    開封第一講書人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵拦耐,是天一觀的道長。 經(jīng)常有香客問我见剩,道長杀糯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任苍苞,我火速辦了婚禮固翰,結(jié)果婚禮上狼纬,老公的妹妹穿的比我還像新娘。我一直安慰自己骂际,他們只是感情好疗琉,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著歉铝,像睡著了一般盈简。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上太示,一...
    開封第一講書人閱讀 52,457評(píng)論 1 311
  • 那天柠贤,我揣著相機(jī)與錄音,去河邊找鬼类缤。 笑死臼勉,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的餐弱。 我是一名探鬼主播宴霸,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼膏蚓!你這毒婦竟也來了瓢谢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬榮一對情侶失蹤驮瞧,失蹤者是張志新(化名)和其女友劉穎恩闻,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體剧董,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年破停,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了翅楼。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡真慢,死狀恐怖毅臊,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情黑界,我是刑警寧澤管嬉,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站朗鸠,受9級(jí)特大地震影響蚯撩,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜烛占,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一胎挎、第九天 我趴在偏房一處隱蔽的房頂上張望沟启。 院中可真熱鬧,春花似錦犹菇、人聲如沸德迹。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽胳搞。三九已至,卻和暖如春称杨,著一層夾襖步出監(jiān)牢的瞬間肌毅,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來泰國打工列另, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留芽腾,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓页衙,卻偏偏與公主長得像摊滔,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子店乐,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容

  • 原文地址:C語言函數(shù)調(diào)用棧(一)C語言函數(shù)調(diào)用棧(二) 0 引言 程序的執(zhí)行過程可看作連續(xù)的函數(shù)調(diào)用艰躺。當(dāng)一個(gè)函數(shù)執(zhí)...
    小豬啊嗚閱讀 4,629評(píng)論 1 19
  • 匯編基礎(chǔ)教程 16位和32位的80x86匯編語言的區(qū)別 需要注意的是匯編不是一種語言,不同平臺(tái)有不同的匯編語言對應(yīng)...
    inwunwe閱讀 9,506評(píng)論 2 19
  • 一眨八、溫故而知新 1. 內(nèi)存不夠怎么辦 內(nèi)存簡單分配策略的問題地址空間不隔離內(nèi)存使用效率低程序運(yùn)行的地址不確定 關(guān)于...
    SeanCST閱讀 7,819評(píng)論 0 27
  • 附件1 2017中考考試時(shí)間及科目安排 日 期 上 午 下 午 6月23日 語文(8:30—10:30) 英語(...
    師道在我心閱讀 214評(píng)論 0 0
  • 這幾天兒子挺聽話的腺兴,不怎么淘氣了,就是每天都有自己的小要求廉侧,今天的要求是到樓下廣場去玩會(huì)页响,我感覺好幾天晚上沒...
    董勝杰麻麻閱讀 147評(píng)論 0 0