Recent Forum Posts
From categories:
歐陽雯 (guest) 27 Oct 2018 00:28
in discussion Hidden / Per page discussions » 錯誤更正

P.2-26, FIG. 2.18 , should the content of PC be 0000001C instead of 00000018?

by 歐陽雯 (guest), 27 Oct 2018 00:28
Pharme552 (guest) 24 May 2015 13:44
in discussion Hidden / Per page discussions » 系統程式

Very nice site!

by Pharme552 (guest), 24 May 2015 13:44
Pharma229 (guest) 22 May 2015 22:38
in discussion Hidden / Per page discussions » 系統程式

Very nice site!

by Pharma229 (guest), 22 May 2015 22:38
eric (guest) 18 Dec 2014 12:15
in discussion Hidden / Per page discussions » 跨平台虛擬機 - QEMU

真是簡單又有趣的方法啊?
這邊有點看不太懂 這是C++標準寫法? 謝謝
R1: RESW 1
R2: RESW 1
K200: RESW 1
K300: RESW 1

by eric (guest), 18 Dec 2014 12:15
Smithf60 (guest) 03 Jul 2014 06:24
in discussion Hidden / Per page discussions » 系統程式

Hi to all, how is everything, I think every one is getting more from this site, and your views dekddkkekdebeegd

by Smithf60 (guest), 03 Jul 2014 06:24
xxx (guest) 13 Apr 2011 03:42
in discussion Hidden / Per page discussions » 目的檔格式 (ELF)

Porcedure Linkage —> Procedure Linkage

by xxx (guest), 13 Apr 2011 03:42
Mr.K (guest) 18 Mar 2011 14:07
in discussion Hidden / Per page discussions » 系統程式

問題1:
在你的機器上測試 那些區域變數的位址是由OS處理的虛擬位址
a的位址大於b的位址 是因為a和b是區域變數 執行時期是使用到記憶體的stack部份
而stack是由高位址往低位址 在陳老師的系統程式書裡P5-19圖5.14(a)
所以a的位址大於b的位址
至於你說的little endian是指資料放進記憶體的順序 應該和你問的問題無關

問題2:
通常是由OS處理看它想要安排什麼樣的位址
想要連續位址 可以對Compiler做設定對齊位址 或是 使用陣列或結構 等…
但我猜是因為你用64Bits的OS+64Bits的CPU

以上我說的不一定全對
只是就我所知道的給你參考

有錯的話還請給予指正
謝謝

by Mr.K (guest), 18 Mar 2011 14:07
Mr.K (guest) 18 Mar 2011 14:06
in discussion Hidden / Per page discussions » 系統程式

麻煩陳老師幫我刪除這篇多打的留言
謝謝

by Mr.K (guest), 18 Mar 2011 14:06
江建安 (guest) 07 Mar 2011 07:46
in discussion Hidden / Per page discussions » 系統程式

陳老師您好, 拜讀您的大作後開始了C的學習, 然而目前遇到2個疑問是關於記憶體位址和所佔用大小, 懇請解惑, 程式如下

#include <stdio.h>;

int main() {
//整數變數, 佔用4byte
int a = 0;
//倍精度浮點數, 佔用8byte
double b = 0;
//輸出大小後, 各顯示4與8, 這部分沒問題
printf("大小:\n int: %d\n double: %d\n", sizeof(a), sizeof(b));

//輸出a與b的位址
//問題1: 在我的機器上測試, a的位址是22FF44, b的位址是22FF38, 為何a顯示的位址數字大於b?(經查證, 是因為x86採用little endian, 所以順序顛倒, 但不知其所以然)
//問題2: 為何b被定址為與a相差12的位址? 我認為宣告int a佔用了4byte, 表示在a定址後經過了4byte才又定址b, 所以b應該被定址為22FF40, 難道是傳說中的隨機存取機制???)
printf("位址:\n a: %X\n b: %X\n", &a, &b);

system("pause");
return 0;
}

by 江建安 (guest), 07 Mar 2011 07:46

其實寫系統程式這本書是我長久以來的一個需求,原因是我找不到一本將系統程式交代得很清楚的書,Beck 的書我曾經用過,但總是不順手,也有很多疑點。

後來接觸了 GNU 工具之後,開始發現 Beck 所說的東西都無法實務操作,於是我想寫一本可以實務操作的系統程式書,卻又必須把理論盡可能交代清楚,在旗標的彥發兄邀請下於是寫了這本書。

但是即便如此,我還是有些遺憾,作業系統 (OS) 的部分沒有實作,編譯器 (Compiler) 的部分程式實作雖然簡單,但是不夠完整,CPU0 也還沒有在 FPGA 上面實作出來等等。

關於高等 C 語言,如果方便的話,可以直接看網路上的網頁 http://ccckmit.wikidot.com/cp:main,過一陣子我會直接將電子書出版在 pubu 網站上,pubu 網址是 http://www.pubu.com.tw/,經過了一次出版經驗後,我感受到網路出版具有重要的價值,不論是對讀者或作者而言,都是如此。或許這本書不會有紙本了,但是我希望整個出版業可以快速轉型,讓小量印刷的成本降低,如此就能讓讀者在 pubu 這種出版網站上直接訂購紙本書籍。當然,如果有 Pad 等裝置,那就連印都不用印了,會是一種更方便的選擇。

Mr.K (guest) 15 Jan 2011 15:39
in discussion Hidden / Per page discussions » 教科書:系統程式 -- 問題與回答

好書不該寂寞,陳鍾誠老師所著的這本系統程式,對我而言就是一本好書.
好書的定義是什麼?本人對於好書的看法是一本能讓自己看得懂,學的到東西的書,它即是一本所謂的好書.

以前唸技術學院時,課程中沒有組合語言或系統程式的課可以修,對於想要了解程式從產生目的檔到連結產生執行檔並載入到記憶體執行過程如何運作的我,一直苦於找不到一本讓我能看懂並學習的好書,如今陳老師的這本系統程式書,個人覺得內容簡單明瞭,配合範例和圖與額外的文字說明,讓我總算了解基本的系統程式,相信此書滿適合各大專院校資訊相關科系的學生或是像我一樣想自習的人.

題外話:
為什麼會想自習系統程式?
不少人寫所謂的程式,只知道用某個程式語言,寫需要的功能,然後呼叫一些API,在利用IDE產生執行檔,執行後,有最後要的結果就好.
那麼非資訊相關科系和本科系的差別在那?
個人認為資訊相關科系的學生應該對於:作業系統,計算機組織,組合語言,系統程式,演算法,資料結構 都能有一定Sense,對未來從事科技業做Programmer或多或少會有幫助的.

要將懂的知識分享出來真的很花時間,無論是PO在網路上,或是出版書籍,謝謝陳老師的分享,及不厭打擾,願意花時間回覆我的問題,期待您的高等C語言.

by Mr.K (guest), 15 Jan 2011 15:39
歡迎留言
陳鍾誠 (guest) 04 Jun 2010 00:22
in discussion Hidden / Per page discussions » 系統程式

作者竭誠的歡迎任何人留言!

歡迎留言 by 陳鍾誠 (guest), 04 Jun 2010 00:22
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License