初學(xué)者怎樣看懂代碼 有必要學(xué)習(xí)匯編語(yǔ)言嗎?
有必要學(xué)習(xí)匯編語(yǔ)言嗎?謝謝邀請(qǐng),現(xiàn)在從事匯編語(yǔ)言的崗位相對(duì)比較少,如果是從就業(yè)的角度考慮不建議直接去學(xué)習(xí)匯編,但是從建立知識(shí)體系的角度還是值得去學(xué)習(xí)。學(xué)習(xí)匯編語(yǔ)言的幾個(gè)好處:1.能更好的理解計(jì)算機(jī)體系
有必要學(xué)習(xí)匯編語(yǔ)言嗎?
謝謝邀請(qǐng),
現(xiàn)在從事匯編語(yǔ)言的崗位相對(duì)比較少,如果是從就業(yè)的角度考慮不建議直接去學(xué)習(xí)匯編,但是從建立知識(shí)體系的角度還是值得去學(xué)習(xí)。
學(xué)習(xí)匯編語(yǔ)言的幾個(gè)好處:
1.能更好的理解計(jì)算機(jī)體系結(jié)構(gòu)
2.在某些領(lǐng)域能夠極大的提升性能
3.方便從底層分析問(wèn)題所在,特別是在解決某些程序崩潰
希望能幫到你
編程語(yǔ)言越來(lái)越高級(jí),匯編到底有什么用?
反匯編程序。匯編語(yǔ)言絕對(duì)有用。如果能讀懂匯編語(yǔ)言的話,那程序反匯編之后,你也讀不懂。
我曾經(jīng)自學(xué)過(guò)匯編語(yǔ)言,而學(xué)習(xí)匯編語(yǔ)言的目標(biāo)很簡(jiǎn)單,就是反匯編動(dòng)態(tài)跟蹤游戲,然后找到游戲的所謂的call。然后用其他的高級(jí)語(yǔ)言程序編寫外掛??梢酝瓿捎螒蛑械囊恍﹦?dòng)作,這種外掛被稱為內(nèi)存掛,效率要遠(yuǎn)遠(yuǎn)高于像按鍵精靈一樣的游戲外掛。
如果您玩游戲的話又想自己寫外掛的話,這一個(gè)是必須學(xué)習(xí)的,不然的話你沒(méi)法做一個(gè)好的游戲輔助。
上面這種游戲,屬于不是脫機(jī)的外掛,如果您想寫脫機(jī)外掛的話,那肯定還需要閱讀游戲反匯編之后的匯編語(yǔ)言代碼。
在這些代碼里面尋找游戲發(fā)包收包加密的一些程序段,如果能完成這一步的學(xué)習(xí)制作分析,那就可以寫脫機(jī)外掛了。其實(shí)脫機(jī)外掛比較簡(jiǎn)單,他不需要打開游戲,也不需要完成游戲的,防作弊系統(tǒng)。只是不停的收包發(fā)包就可以了,但是這個(gè)極其麻煩,分析起來(lái)。比如說(shuō)心跳包,比如說(shuō)地址的格式。人物信息的分布。等等。
就和你分析這些吧,反正我覺(jué)得匯編語(yǔ)言,在當(dāng)時(shí)的我來(lái)講,最大的作用就是玩游戲.。最后再補(bǔ)充一下,匯編語(yǔ)言,學(xué)好了之后,您可以對(duì)一些底層的代碼進(jìn)行分析,包括硬件的一些編程的代碼,匯編代碼也涉及到數(shù)據(jù)安全等等,還可以完成破解軟件,破解硬件加密狗脫殼加殼虛擬機(jī)等一系列的工作。
這樣我還能推薦一個(gè)論壇,當(dāng)然現(xiàn)在不知道還有沒(méi)有,那就是看雪論壇。
祝您學(xué)習(xí)有進(jìn)步。
匯編語(yǔ)言新手問(wèn)題基址寄存器和變址寄存器分別是干什么的?
基址寄存器:寄存器BX稱為基地址寄存器(Base Register),它可作為存儲(chǔ)器指針來(lái)使用。 變址寄存器:32位CPU有2個(gè)32位通用寄存器ESI和EDI。其低16位對(duì)應(yīng)先前CPU中的SI和DI,對(duì)低16位數(shù)據(jù)的存取,不影響高16位的數(shù)據(jù)。 寄存器ESI、EDI、SI和DI稱為變址寄存器(Index Register),它們主要用于存放存儲(chǔ)單元在段內(nèi)的偏移量,用它們可實(shí)現(xiàn)多種存儲(chǔ)器操作數(shù)的尋址方式,為以不同的地址形式訪問(wèn)存儲(chǔ)單元提供方便。 變址寄存器不可分割成8位寄存器。作為通用寄存器,也可存儲(chǔ)算術(shù)邏輯運(yùn)算的操作數(shù)和運(yùn)算結(jié)果。 它們可作一般的存儲(chǔ)器指針使用。在字符串操作指令的執(zhí)行過(guò)程中,對(duì)它們有特定的要求,而且還具有特殊的功能。