国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享

這篇具有很好參考價(jià)值的文章主要介紹了ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

Algorithm

題目:鏈表中環(huán)的檢測
自己的分析見博客《檢測鏈表中是否存在環(huán)》

Review

disassemble command是我讀的一篇英語文章,這篇文章主要是介紹gdb反匯編命令的使用和參數(shù)。自己為了能夠演示這篇文章里邊的內(nèi)容,特意自己使用匯編語言編寫代碼,然后寫了一篇博客。

我這里使用下邊的匯編代碼進(jìn)行演示:

# 文件名稱:twoNumberPlus.s
.type twoNumberPlus, @function
.section .data
      intFormatShow:
          .ascii "%d\n\0"
 .global main
 .section .text
    main:
         pushq %rbp
         movq %rsp,%rbp
         movq $2,%rdi
         movq $3,%rsi
         call twoNumberPlus

         movq %rax,%rsi
         movq $intFormatShow,%rdi
         movq $0,%rax
         call printf

         movq $60,%rax
         movq $0,%rdi
         movq %rbp,%rsp
         popq %rbp
         syscall
    twoNumberPlus:
         pushq %rbp
         movq %rsp,%rbp
         addq %rdi,%rsi
         movq %rsi,%rax
         movq %rbp,%rsp
         popq %rbp
         ret

gcc -g twoNumberPlus.s -static -o twoNumberPlus帶有調(diào)試信息地進(jìn)行編譯。
gdb -q twoNumberPlus使用安靜模式開始調(diào)試。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)
list可以看一下第1行到第10行代碼。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

break 10可以在第10行代碼處設(shè)置上斷點(diǎn),run可以讓gdb開始運(yùn)行程序,disassemble可以查看當(dāng)前運(yùn)行的函數(shù)。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble twoNumberPlus可以看一下twoNumberPlus函數(shù)的匯編代碼。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble 0x0000000000401095可以看一下0x0000000000401095地址所在的函數(shù)匯編代碼。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble 0x000000000040108e,0x0000000000401095只顯示0x000000000040108e0x0000000000401095之間的匯編代碼,注意不包括0x0000000000401095。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble twoNumberPlus,+4反匯編函數(shù)twoNumberPlus和它加4地址之間的代碼,不包括twoNumberPlus+4的代碼。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble 0x000000000040108e,+9,反匯編0x000000000040108e0x000000000040108e+9的地址之間代碼,不包括0x000000000040108e+9的代碼。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble /m twoNumberPlus twoNumberPlus函數(shù)反匯編出來,也把對應(yīng)的行數(shù)顯示出來。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

disassemble /r twoNumberPlus把機(jī)器碼也反匯編出來。
ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享,ARTS打卡,鏈表,學(xué)習(xí)

Technique/Tip

我最近在學(xué)習(xí)匯編語言,感覺自己的技術(shù)基礎(chǔ)有些差,希望程序員朋友還是要把底層知識(shí)好好學(xué)習(xí)一下,爭取都能掌握,讓我們的技術(shù)生命周期更長一些。另外還需把自己的涉及面提升一下,我的意思就是大家的技術(shù)既要深,也要博,當(dāng)然還是要把握兩者的平衡點(diǎn),畢竟一個(gè)人的精力有限。這里推薦給大家?guī)妆緟R編書籍。
intel匯編風(fēng)格(64位)

Beginning x64 Assembly Programming From Novice to AVX Professional(中文版《x64匯編語言:從新手到AVX專家》)
Low-Level Programming C, Assembly

AT&T匯編風(fēng)格(64位)

Learn to Program with Assembly Foundational Learning for New Programmers

Share

分享自己對《認(rèn)知天性》的一些總結(jié)。

學(xué)習(xí)的本質(zhì)是打造心智模型,將知識(shí)條件反射式使用,就是在遇到問題時(shí),能夠毫不費(fèi)力地迅速對問題做出反應(yīng)。

學(xué)習(xí)的三步驟:編碼、鞏固和檢索

編碼:將材料記到大腦里面,形成短期記憶
鞏固:將短期記憶變成長期記憶
檢索:將知識(shí)從記憶中提取到意識(shí)中解決實(shí)際問題

學(xué)習(xí)的提升需要通過合意困難來完成,合意困難有三個(gè)要素:

1.有相應(yīng)的已知做基礎(chǔ)
2.能夠觸發(fā)鞏固和檢索
3.對學(xué)習(xí)有正面促進(jìn)作用

學(xué)習(xí)的八種方法:

1.從記憶中檢索新學(xué)習(xí)的內(nèi)容,是學(xué)習(xí)的最好方法。
2.間隔地安排檢索練習(xí),需要注意檢索知識(shí)的時(shí)間間隔,在《認(rèn)知天性》里邊只說,根據(jù)不同的材料選擇不同的間隔時(shí)間。根據(jù)《考試腦科學(xué)》中的說法,在學(xué)習(xí)之后的一個(gè)月內(nèi),一定要復(fù)習(xí)一次,否則可能就是重新學(xué)習(xí)了。
3.穿插學(xué)習(xí)各種問題類型
4.細(xì)化:為新材料尋找不同層次的意義,比如將剛學(xué)習(xí)的內(nèi)容跟已經(jīng)學(xué)習(xí)到的知識(shí)進(jìn)行關(guān)聯(lián)。
5.生成:在看到解決方法之前需要自己努力回答問題或者解決難題。
6.反思:將檢索和細(xì)化進(jìn)行結(jié)合,回顧一下以前學(xué)習(xí)的知識(shí),看一下自己什么地方做得好,什么地方做得不好。
7.校準(zhǔn): 使用客觀評(píng)價(jià)工具來清除你已經(jīng)掌握的知識(shí)錯(cuò)覺,調(diào)整你的認(rèn)識(shí)來更好地反映現(xiàn)實(shí)。
8.助記:使用諧音或者順口溜或者概括進(jìn)行記憶。文章來源地址http://www.zghlxwxcb.cn/news/detail-677350.html

到了這里,關(guān)于ARTS打卡第二周之鏈表環(huán)的檢測、gdb中disassemble的使用、底層學(xué)習(xí)建議、學(xué)習(xí)分享的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • QT第二周周三

    QT第二周周三

    題目:使用圖片繪制出儀表盤 代碼: widget.h widget.cpp 運(yùn)行效果:

    2024年01月18日
    瀏覽(18)
  • 第二周作業(yè)0414

    1.總結(jié)學(xué)過的文本處理工具,文件查找工具,文本處理三劍客, 文本格式化命令(printf)的相關(guān)命令及選項(xiàng),示例。 答:文本處理工具 tr 用于替換和刪除字符 cat 顯示文本內(nèi)容 nano 修改文本 sort 排序 wc 統(tǒng)計(jì)行號(hào) tac 反向打印顯示內(nèi)容 cut 提取特定字段 答:文本三件客分別是:gr

    2024年04月14日
    瀏覽(25)
  • 第二周題解

    其實(shí)上周只要做8道題目,所以允許我偷個(gè)懶,將上周的第9,10道題c v 過來 (qwq) 有一個(gè)n×n的網(wǎng)格,有些格子是可以通行的,有些格子是障礙。 一開始你在左上角的位置,你可以每一步往下或者往右走,問有多少種走到右下角的方案。 由于答案很大,輸出對10^9+7取模的結(jié)果。

    2024年02月12日
    瀏覽(17)
  • Qt第二周周二作業(yè)

    Qt第二周周二作業(yè)

    代碼: widget.h widget.cpp 運(yùn)行截圖:

    2024年01月17日
    瀏覽(26)
  • 【個(gè)人作業(yè)】第二周用戶調(diào)研作業(yè)3

    做過頭通常指的是某種行為或決策過于極端或過度,導(dǎo)致不利的后果。在這種情況下,數(shù)據(jù)驅(qū)動(dòng)的決策可能會(huì)導(dǎo)致一些問題。 (一)、在Google的例子中,過度關(guān)注微小的設(shè)計(jì)細(xì)節(jié)和數(shù)據(jù)分析可能會(huì)導(dǎo)致以下幾個(gè)問題: 1、創(chuàng)意和創(chuàng)新受限:過度依賴數(shù)據(jù)可能會(huì)抑制創(chuàng)造力和創(chuàng)

    2024年03月11日
    瀏覽(24)
  • 藍(lán)旭前端第二周預(yù)習(xí)作業(yè)

    偽類是選擇器的一種,它用于選擇處于特定狀態(tài)的元素,比如當(dāng)它們是這一類型的第一個(gè)元素時(shí),或者是當(dāng)鼠標(biāo)指針懸浮在元素上面的時(shí)候。它們表現(xiàn)得會(huì)像是你向你的文檔的某個(gè)部分應(yīng)用了一個(gè)類一樣,幫你在你的標(biāo)記文本中減少多余的類,讓你的代碼更靈活、更易于維護(hù)

    2024年04月09日
    瀏覽(18)
  • 數(shù)據(jù)結(jié)構(gòu)之鏈表

    數(shù)據(jù)結(jié)構(gòu)之鏈表

    頭文件 自定義函數(shù) 主函數(shù) 效果圖 ?

    2024年01月25日
    瀏覽(28)
  • C++之鏈表list

    1.1 list的基本特性 ????????C++的list是一種雙鏈表,這意味著每個(gè)元素都有一個(gè)指向前一個(gè)和后一個(gè)元素的指針。相比于單鏈表,雙鏈表在插入和刪除操作中更為高效,因?yàn)樗恍枰闅v鏈表來找到插入或刪除的位置。 ????????list支持常見的序列操作,如添加元素(p

    2024年02月04日
    瀏覽(16)
  • 線性表之鏈表

    線性表之鏈表

    在計(jì)算機(jī)科學(xué)中,鏈表是一種常見的數(shù)據(jù)結(jié)構(gòu),用于存儲(chǔ)和組織數(shù)據(jù)。相比于順序表,鏈表具有更高的靈活性和動(dòng)態(tài)性。 在本博客中,我們將深入討論鏈表的概念、分類以及實(shí)現(xiàn)方法。我們將從鏈表的基本概念開始,了解鏈表是如何組織數(shù)據(jù)的,并分析鏈表的優(yōu)勢和劣勢。

    2024年02月11日
    瀏覽(27)
  • 碼農(nóng)的周末日常---一月的第二周

    碼農(nóng)的周末日常---一月的第二周

    上周總結(jié) ? ? ? ? 開發(fā)任務(wù)按規(guī)劃完成 ? ? ? ? 參加新版本的需求分析會(huì)議,基本了解新功能的實(shí)現(xiàn) ? ? ? ? 開始閱讀一本新書《Head first Java》 2024/01/13? ? ? ? 天氣晴? ? ? ? 溫度適宜 ? ? ? ? 藍(lán)藍(lán)的天,暖暖的陽光,不曬鞋可惜了,趕緊掏出我那正宗莆田和anta曬,扔到

    2024年01月19日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包