應該怎麼學彙編,怎麼學習彙編

2023-04-14 10:10:06 字數 4652 閱讀 6270

1樓:挨踢花木蘭

不要急於寫彙編程式, 先學著用偵錯程式,比如od(32位的) debug(真實模式) 的,我描述用od。 因為od可以直接在裡面寫上彙編指令,並能單步執行,即能看到效果,現在的組合語言怎麼說呢?對應用程式開發的程式設計師來說,很大程度上是應用於除錯。

當然如果你是cracker。。或者玩shellcode。。那可能需要寫彙編程式,但是儘管是玩shellcode很多人也是用at&t風格的彙編嵌入 或者是intel風格的彙編嵌入c語言**。

而後除錯。。怎麼說呢?以後大型程式越來越多,除錯技術的掌握將是一個程式設計師必備的技能。

2樓:匿名使用者

從基本的指令學,不一定背會但要理解,用時能找到就行。

3樓:匿名使用者

應該用眼看,用心想,最主要是用手敲。

彙編有多難呢?

4樓:做而論道

彙編,非常簡單,一點也不難。

每一條彙編指令,都是針對硬體,進行操作。

硬體,很多人學不進去,所以說彙編難學。這些人,只能學一些空洞的變數 i、j、k...學不了具體的儲存單元。

另外,因為組合語言的功能太簡單了,所以編寫大程式,就顯得太長。這也是「難」的一種說法。

現在,最好的程式設計方法是:在高階語言中,嵌入彙編的**。

5樓:匿名使用者

不是難,是麻煩。

用c,c++一句**完成的是用匯編要好幾句所以寫小程式用匯編就可以了,寫大程式的話,工作量就大了難不難的,習慣了就好。

雖然我是學的彙編時間最長,但是我還是不建議你學彙編,一是用的少,二是太羅嗦,三是沒c,c++資料多。

如果學校要求那就學吧,不難,橫豎那麼幾個指令,推薦,都是學彙編的,有王爽組合語言的每章的討論區,愛好者還是不少的。

6樓:顏海鏡

其實挺簡單的,彙編就是學思想,不同的指令系統的指令都是不同的,所以思想很重要。

7樓:

如果你覺得難的時候就寫幾個程式,如果能正常工作,自信自然就來了,就不會覺得難了。

8樓:匿名使用者

不怎麼難。只是你不適應。

9樓:網友

取決於你想想掌握達到什麼程度。

怎麼學習彙編

10樓:懂視生活

一、彙編大多是指組合語言,彙編程式。把組合語言翻譯成機器語言的過程稱為彙編。在組合語言中,用助記符代替操作碼,用地址符號或標號代替地址碼。

這樣用符號代替機器語言的二進位制碼,就把機器語言變成了組合語言。於是組合語言亦稱為符號語言。

二、怎麼學習彙編:

1、彙編的除錯環境總的來說比較少,也很少有非常好的編譯器。

2、設計的輕鬆彙編是一款非常適合初學者的彙編編譯器。輕鬆彙編是一個組合語言整合開發環境,主要面向組合語言初學者,也可以用它進行開發。

3、除了普通。

怎麼學習彙編比較好

11樓:懂視生活

學習彙編的方法:

1、掌握一定的微機硬體基礎知識,因為彙編很底層,更加接近機器語言,很多的東西要從機器層面來支援理解。

2、最好先學習一門高階語言,因為高階語言更接近人的語言,比較容易理解彙編。

3、細緻踏實的學習態度是少不了的,更為重要的是實踐。

4、勤奮刻苦等品質是學習的動力。

如何學習組合語言?

12樓:匿名使用者

學習組合語言過程:

一,要有一定的微機硬體基礎知識,因為彙編很底層,更加接近機器語言,往往很多的東西要從機器層面來支援理解。

二,最好先學習一門高階語言,因為高階語言更接近人的語言,相對比較容易理解。掌握了一門高階語言後再學彙編,一來不易產生畏懼感,二來遇到問題,只能侷限於已學的彙編知識來來思考遇到的問題,此時跳出彙編,旁援掌握的語言有助拓新思路,而不只侷限與彙編一個思路。

三,細緻,踏實的學習態度是少不了的,更為重要的是實踐。比喻為:猶如一個戰士進入敵營中心地帶,要冷靜,小心,還要勇敢,智慧,要在敵中心步步為勝,留意敵人的一舉一動,將敵一掃而光,不可大意一步,因為接近核心了,稍一大意有可能留下極大隱患。

四,一個狂熱的學習勁頭,是學習的動力。勤奮,刻苦,等品質也將幫你一路順進。

13樓:匿名使用者

個人覺得彙編比較簡單,用起來複雜,建議不用學,而且每個cpu指令系統不一樣,麻煩啊。。。如果有興趣買本彙編書看,自己編程式設計序就行。

14樓:曾記否烈火雄心

學習組合語言我主張由實踐到理論。對於書本上的內容沒有必要去死記硬背,但是當你在程式設計時遇到問題就一定要回到書本查詢,最好靠自己解決,這樣印象比較深刻。總之一句話是要,程式設計中得到提升!

15樓:好名字都死光咯

彙編入門你可以找楊季文的《80x86組合語言程式設計》先入門知道如何使用指令系統之類,接著可以學學保護模式下的程式設計或者win32彙編隨你。樓上說彙編簡單,這個我不認同。。。

16樓:網友

中國人寫的(我覺得國人計算機方面的著作就算彙編比較有出席拉) 一本是王爽寫的《組合語言》和羅雲彬寫的windows環境下32位組合語言程式設計,這2本書在學習彙編的人心中地位都非常高現在都出了第2版了,而且網上都有電子版。其他還有一些書比如: 溫冬蟬,沈美明:

清華大學出版社,《ibm pc 組合語言程式設計教程》, 美】kip 著,溫玉傑等譯:

《intel 組合語言程式設計》(第四版),都是比較經典的,如果有機會可以看看!

17樓:網友

自己做幾個專案就懂了。

現在用匯編還能做什麼?請講具體點。

組合語言能做什麼?

18樓:網友

組合語言的作用:

組合語言用一些容易理解和記憶的字母,單詞來代替一個特定的指令,比如:用「add」代表數字邏輯上的加減,「 mov」代表資料傳遞等等,通過這種方法,人們很容易去閱讀已經完成的程式或者理解程式正在執行的功能,對現有程式的bug修復以及運營維護都變得更加簡單方便。當計算機的硬體不認識字母符號,這時候就需要一個專門的程式把這些字元變成計算機能夠識別的二進位制數。

因為組合語言只是將機器語言做了簡單編譯,所以並沒有根本上解決機器語言的特定性,所以組合語言和機器自身的程式設計環境息息相關,推廣和移植很難,但是還是保持了機器語言優秀的執行效率,因為他的可閱讀性和簡便性,組合語言到現在依然是常用的程式語言之一。

組合語言不像其他大多數的程式設計語言一樣被廣泛用於程式設計。在今天的實際應用中,它通常被應用在底層,硬體操作和高要求的程式優化的場合。驅動程式、嵌入式作業系統和實時執行程式都需要組合語言。

擴充套件資料:組合語言是計算機提供給使用者的最快最有效的語言,也是能夠利用計算機的所有硬體特性並能夠直接控制硬體的唯一語言。但是由於編寫和除錯組合語言程式要比高階語言複雜,因此目前其應用不如高階語言廣泛。

組合語言比機器語言的可讀性要好,但跟高階語言比較而言,可讀性還是較差。不過採用它編寫的程式具有儲存空間佔用少、執行速度快的特點,這些是高階語言所無法取代的。在實際應用中,是否使用組合語言,取決於具體應用要求、軟體開發時間和質量等方面作權衡。

組合語言作為機器語言之上的第二代程式語言,它也有很多優點:

1、可以輕鬆的讀取儲存器狀態以及硬體i/o介面情況。

2、編寫的**因為少了很多編譯的環節,可以能夠準確的被執行。

3、作為一種低階語言,可擴充套件性很高。

缺點:1、因為**非常單調,特殊指令字元很少,所以造成了**的冗長以及編寫的困難。

2、因為彙編仍然需要自己去呼叫儲存器儲存資料,很容易出現bug,而且除錯起來也不容易。

3、就算完成了一個程式,後期維護時候也需要耗費大量的時間。

4、因為機器的特殊性造成了**相容性差的缺陷。

19樓:數碼答疑

答:組合語言可以做任何事情,因為所有的程式設計軟體都會把高階語言轉換為組合語言,然後才能被機器識別。

20樓:沙裡波特

看人了。

不同的人,能做不同的事情。

怎麼學好彙編

21樓:林源源

想學好彙編,首先要買一本自己覺得好的教材,自己喜歡就好了, 這樣才會有慾望學下去。 然後就是邊看書邊作筆記, 因為彙編上面的東西實在是太多了, 然後把那些指令,每個指令會影響那些標誌, 目的運算元 ,源運算元各要用什麼樣的定址方式 ,統統列成表 還有一點要多回顧 ,因為記的東西多 ,不可能看了一次就記住 ,起初看了命令也很頭疼 現在覺得其實還是有些條理的 。總之, 興趣很重要, 要對自己有信心 !

另外感覺學習彙編最好的辦法就是壓力,自己給自己加壓,我第一次學習彙編就是從一個給定需求的程式開始編起,手頭放兩本彙編基礎的書,邊查書邊從怎樣定義變數定義段寫起,大概一個月時間寫完了程式,大概寫了一萬行**吧。到此,我用匯編進行工作以基本沒有什麼問題了。學計算機的任何技術都以動手為主,這樣感覺比其它方式學的要快要牢。

堅持,對於初學者來說「彙編」可能很枯燥。

時常有放棄的念頭了,還要半途而廢,這樣是學不到什麼的。

還有就是注意放鬆、調整心態。

努力學習吧!

最後送你一句話:「感興趣的去做一切事。」。

如何學習組合語言,學習組合語言需要如何入門?

學習組合語言過程 一,要有一定的微機硬體基礎知識,因為彙編很底層,更加接近機器語言,往往很多的東西要從機器層面來支援理解。二,最好先學習一門高階語言,因為高階語言更接近人的語言,相對比較容易理解。掌握了一門高階語言後再學彙編,一來不易產生畏懼感,二來遇到問題,只能侷限於已學的彙編知識來來思考遇到的問...

學習組合語言的入門書籍有哪些啊,學習組合語言的經典書籍推薦?

學習組合語言,推薦王爽的 組合語言 本書最適合初學者 大多時候,一些初學者不知道應該讀什麼書入門,有一定基礎的開發者不知道如何進階。本文總結了一個c 優秀書籍清單,希望能夠為你帶來一定的幫助。因為多讀一些優秀的書籍,對於開發者穩固程式設計基礎 提高程式設計技能有很大幫助,這些書大多數都有中文版,並且...

請教大神組合語言剛開始學先學習哪種好

推薦 intel組合語言程式設計 第四版 先學intel 686指令集。然後再學win32sdk,就能開發出圖形化程式了。要提高效率,學387指令和sse1,sse2,sse3指令集 ma x86 彙編吧,最基礎了,我也剛學的 程式語言學什麼好 初學者首選肯定是vb6 其次vb.net 然後是c v...