VxWorks的兩個調試命令

來源:互聯網
上載者:User
1.反組譯碼命令l:

用法:l Addr,Num
功能:從Addr地址開始顯示Num條反組譯碼指令,如果不加Num則按照預設的方式顯示10條反組譯碼指令.
舉例:
(1)不加Num按照預設的方式顯示10條反組譯碼指令:

(2)加參數後顯示指定行數的反組譯碼指令:

2.記憶體顯示命令d:

用法:d Addr,UnitNum,UnitBytes
功能:從地址Addr開始顯示UnitNum組的記憶體資料,每行顯示16Bytes;每組包含UnitBytes位元組,一行有16/UnitBytes
     組資料;
說明:UnitBytes的可選值有:1,2,4,8;其它數值的顯示形式和1相同.其中以1為參數可以從任意地址開始顯示資料,
     而已其它參數則只能從偶地址開始顯示.
舉例:地址0x1a900a50附近的記憶體布局如所示,下面使用不同的顯示方式把這段記憶體的內容顯示出來:

(1)從地址0x1a900a55開始顯示32組資料,每組1位元組:
說明:這種說明:這種顯示方式是嚴格按照位元組地址從低到高顯示,對於查看那些單位元組變數比較方便.比如現在地址0x1a900a58處是一個char類型的變數,那麼我們就很容易知道它的值是0x50.但是如果地址0x1a900a58處是一個雙位元組類型的變數,我們就不能安順序讀了,如果認為這個雙位元組變數的值是0x5097那就錯了,因為雙位元組資料在記憶體中的儲存方式是:高位元組在高地址,低位元組在低地址;所以這個雙位元組類型的變數的值應該是0x9750.對於雙位元組變數採用下面的顯示方式查看會更直觀一些.

(2)從地址0x1a900a55開始按照預設顯示資料,每組資料的預設值是2位元組:
說明:這種顯示方式是組之間地址從低到高,組內高地址位元組顯示在前,低地址位元組顯示在後,對於查看那些雙位元組變數比較方便,直接讀出一個組的資料就是一個16位的數值.比如現在地址0x1a900a58處有一個雙位元組的變數,那麼我們可以直接讀出它的值是0x9750.但是如果地址0x1a900a58處是一個四位元組類型的變數,我們就不能安順序讀了,如果認為這個四位元組變數的值是0x975000ee那就錯了,因為四位元組資料在記憶體中的儲存方式是:高位的雙位元組在高地址,低位的雙位元組在低地址;高位的雙位元組和低位的雙位元組儲存方式和單獨的雙字資料存放區方式相同,即:高位元組在高地址,低位元組在低地址;所以這個四位元組類型的變數的值應該是0x00ee9750.對於四位元組變數採用下面的顯示方式查看會更直觀一些.

(3)從地址0x1a900a55開始顯示32組資料,每組4位元組:

說明:這種顯示方式是組之間地址從低到高,組內高地址雙字顯示在先,低地址雙字顯示在後;對於高地址和低地址的雙字都是高地址位元組顯示在前,低地址位元組顯示在後的;這樣對於一個四位元組的資料按照顯示的方式讀出即可.比如現在地址0x1a900a58處又一個四位元組的變數,那麼我們可以直接讀出它的值是0x00ee9750.

注:以上兩個命令顯示的地址和資料都是16進位格式的.

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.