332

請問各位資料結構16進位算法

請問各位資料結構的問題!

1:有一整數列陣int a〔50〕(設sizeo f(int)=2)若a〔0〕在記憶體中的位址為03C4 16進位A〔11〕的位址?我的算法11*2=22

03C4+22=03E62:有一整數列陣int a〔50〕(設sizeo f(int)=2)若a〔0〕在記憶體中的位址為10E9 16進位A〔40〕的位址?我的算法40*2=80

80/16=5

10E9+5=11393:有一浮點數陣列floatA〔18〕〔16〕(設sizeo f(float)=4)

A〔0〕〔0〕位址是03C4 16進位A〔5〕〔3〕的位址?我的算法5*16+3=83

83*4=332

03C4+332=06F6算法跟課本都一樣

可是算出來結果為什麼不一樣?一定有地方算錯了~麻煩各位大大幫我解答一下~
你沒把10進位轉成16進位便去計算

當然錯誤。

更正的部份用紅字顯示。

1:有一整數列陣  int a〔50〕(設sizeof(int)=2)  若a〔0〕在記憶體中的位址為03C4 16進位  A〔11〕的位址? 更正算法11*2=22=16H

03C4+16=03DA2:有一整數列陣  int a〔50〕(設sizeof(int)=2)  若a〔0〕在記憶體中的位址為10E9 16進位  A〔40〕的位址? 更正算法40*2=80=50H

10E9+50=11393:有一浮點數陣列  floatA〔18〕〔16〕(設sizeof(float)=4)  A〔0〕〔0〕位址是03C4 16進位  A〔5〕〔3〕的位址? 更正算法5*16+3=83

83*4=332=14CH

03C4+14C=0510
1. 03C4 16=03DA2. 10E9 50=11393. 03C4 20C=05D0
1:有一整數列陣int a〔50〕(設sizeof(int)=2)若a〔0〕在記憶體中的位址為03C4 16進位a〔11〕的位址?我的算法11*2=22

03C4+22=03E6這裡錯了

22是十進位

應該是十六進位1603C4+16=03DA2:有一整數列陣int a〔50〕(設sizeof(int)=2)若a〔0〕在記憶體中的位址為10E9 16進位a〔40〕的位址?我的算法40*2=80

80/16=5

10E9+5=113980換十六進位是50

你把餘數0忘了10E9+50=11393:有一浮點數陣列floatA〔18〕〔16〕(設sizeof(float)=4)

A〔0〕〔0〕位址是03C4 16進位A〔5〕〔3〕的位址?我的算法5*16+3=83

83*4=332

03C4+332=06F6要把332換十六進位是14C03C4+14C=0510
我的媽呀...這算法看起來有像一公升的油加五百克的糖....有空的話多用小算盤做一些 10 進位和 16 進位的運算實作吧.
關於十進數332轉換成十六進數的問題:從答案反算就知道了呀:(1)十六進數14C=1*256+4*16+12=332(2)十六進數20C=2*256+0*16+12=524所以你是算錯了。

你用除法來作換算

第一次餘數是12(C)

商是20但是你沒有把20再作一次!

(別忘了20比16大)再作一次

第二次餘數是4

商是1

所以是14C

資料結構書,資料結構作業,資料結構題目,資料結構教學,資料結構時間複雜度,資料結構串列,資料結構陣列,何謂資料結構,資料結構 聖經,資料結構與演算法資料結構,進位,算法,sizeof,記憶體,浮點數,floatA,整數,int,各位大大

進位|for|會員管理|語法|do-while|程式|連結|8051|迴圈|數值|read|C |code|陣列|線性|堆疊|字串|會員登入|運算|C|函數|撰寫|題目|程式設計|矩陣|讀取|指令|API|

332
參考:http://tw.knowledge.yahoo.com/question/question?qid=1508042402920如有不適當的文章於本部落格,請留言給我,將移除本文。謝謝!

創作者介紹
創作者 toye44402 的頭像
toye44402

《爭龍傳Online》




toye44402 發表在 痞客邦 留言(0) 人氣()