October 9, 2001
On 2001-10-21 21:44, kode wrote:
det är inte så svårt egentligen.
i decimala talsystemet så är tex
123
samma sak som
1*10^2 + 2*10^1 + 3*10^0
i det hexadecimala är det 16 olika värden per position istället för 10. detta löses med att när man kommer till tionde värdesiffran börjar man med bokstäver istället, från A till F.
123 blir då
7*16^1 + B*16^0hoppas detta hjälper nu...
Skulle du kunna utveckla det lite?
October 21, 2001
On 2001-10-21 21:56, Biters wrote:
On 2001-10-21 21:44, kode wrote:
det är inte så svårt egentligen.
i decimala talsystemet så är tex
123
samma sak som
1*10^2 + 2*10^1 + 3*10^0
i det hexadecimala är det 16 olika värden per position istället för 10. detta löses med att när man kommer till tionde värdesiffran börjar man med bokstäver istället, från A till F.
123 blir då
7*16^1 + B*16^0hoppas detta hjälper nu...
Skulle du kunna utveckla det lite?
det skulle jag nog kunna göra. vad är det du undrar om? känner du till det binära talsystemet?
October 10, 2001
Det är ganska enkelt, det är ju det som är talbas, vilket jag skrev om förut.
Talbas betyder att varje siffra är värd siffran multiplicerat med talbasen upphöjt i siffrans position i talet. Ett hundratal är värt talbasen upphöjt i 2, ett tiotal i 1, ett ental i 0.
Det decimala systemet har talbas tio och således är:
125 = 1*10^2 + 2*10^1 + 5*10^0 = 100 + 20 + 5
Det hexadeciamala systemet har talbas 16 och således är:
FF = 15*16^1 + 15*16^0 = 240 + 15 = 255
_________________
Hade jag haft en bra dator skulle jag ha skrutit om den här.
[ Detta Inlägg ändrades av: Quaero den 2001-10-21 22:03 ]
[ Detta Inlägg ändrades av: Quaero den 2001-10-21 22:03 ]
October 9, 2001
On 2001-10-21 21:57, kode wrote:
On 2001-10-21 21:56, Biters wrote:
On 2001-10-21 21:44, kode wrote:
det är inte så svårt egentligen.
i decimala talsystemet så är tex
123
samma sak som
1*10^2 + 2*10^1 + 3*10^0
i det hexadecimala är det 16 olika värden per position istället för 10. detta löses med att när man kommer till tionde värdesiffran börjar man med bokstäver istället, från A till F.
123 blir då
7*16^1 + B*16^0hoppas detta hjälper nu...
Skulle du kunna utveckla det lite?
det skulle jag nog kunna göra. vad är det du undrar om? känner du till det binära talsystemet?
Jo da, det ända jag behöver hjälp me e dec till hex lite mer förklarat och gärna ett par exemple till..
October 9, 2001
On 2001-10-21 22:02, Quaero wrote:
Det är ganska enkelt, det är ju det som är talbas, vilket jag skrev om förut.
Talbas betyder att varje siffra är värd siffran multiplicerat med talbasen upphöjt i siffrans position i talet. Ett hundratal är värt talbasen upphöjt i 2, ett tiotal i 1, ett ental i 0.
Det decimala systemet har talbas tio och således är:125 = 1*10^2 + 2*10^1 + 5*10^0 = 100 + 20 + 5
Det hexadeciamala systemet har talbas 16 och således är:
FF = 15*16^1 + 15*16^0 = 240 + 15 = 255
_________________
Hade jag haft en bra dator skulle jag ha skrutit om den här.[ Detta Inlägg ändrades av: Quaero den 2001-10-21 22:03 ]
[ Detta Inlägg ändrades av: Quaero den 2001-10-21 22:03 ]
Hmm, okej. Tack!
Men dec till hex då?
de e de som e svårt
Finns det inge enklare sätt än det _paul_ skrev?...
_________________
P3 850@1030
768MbRam
90gig Raid0
Asus GF3dlx
@240/533
Sony 12/8/32
19" NEC FP950
Enermax PSU 350W
+ Casemods
[ Detta Inlägg ändrades av: Biters den 2001-10-21 22:07 ]
October 10, 2001
Det Paul skrev är det enklaste, kan man talbaser så är det bara att räkna om. Jag tar ett exempel.
Vi har talet 125
vi vet att position 2 i det hexadeciamal systemet som mest kan vara värd 256 så vi vet att det inte finns fler än 2 hexadecimala "siffror".
Vi börjar alltså med position 2.
Vi vet att position 2 är värd siffran multiplicerat med talbasen 16 upphöjt i 1. Alltså siffran multiplicerat med 16.
Vi delar 125 med 16 för att få ut vad vi har på position 2.
Vi får att det går 7 ggr och det blir 112 alltså får vi 13 kvar.
Nu tar vi hexadecimala position 1. Den är värd siffran multiplicerat med talbasen upphöjt i 0. Alltså siffran multiplicerat med 1. Alltså siffrans värde.
alltså är det tal som är kvar, 13, värt 13 även i hexadecimal, alltså C.
Talet 125 är alltså 7C i hex
Hoppas det hjälpte.
_________________
Hade jag haft en bra dator skulle jag ha skrutit om den här.
[ Detta Inlägg ändrades av: Quaero den 2001-10-21 22:18 ]
October 21, 2001
On 2001-10-21 22:06, Biters wrote:
Hmm, okej. Tack!
Men dec till hex då?
de e de som e svårt
Finns det inge enklare sätt än det _paul_ skrev?...
jag skrev en jäkla massa här, men sen kom jag på att jag var övertrött och räknade fel.
_________________
}Netwerkin.com
[ Detta Inlägg ändrades av: kode den 2001-10-21 22:19 ]
October 10, 2001
Det är ju starkt att du erkänner det i alla fall men om du tittar på den förklaring jag gav och funderar över den en stund så borde den inte vara så svår att förstå. Jag kan förklara mer om du vill. Hexadecimala tal kan vara bra att kunna när man sitter vid datorn även om man inte bryr sig om matte i övrigt.
June 18, 2001
Sista siffran i hexadecimala talet är
decimala talet mod 16.
Heltalsdividera det decimala talet med 16.
Näst sista siffran i hexadecimala talet är
nya decimala talet mod 16.
Osv. ända tills decimaltalet blir noll.
Ex.
int decTal = 213;
int i = 0;
int len = hexTal.length;
while(decTal!= 0)
{
hexTal[len - i] = decTal % 16;
decTal = decTal / 16;
i++;
}
return hexTal;
//Nu får du ju även omvandla tal som överstiger 9 till bokstäver också, men det ska väl inte vara så svårt.
[ Detta Inlägg ändrades av: Jerry den 2001-10-22 17:36 ]
August 2, 2001
Klart den snyggaste lösningen i mitt tycke om kan läsa kod. Den funkar ju på samma sätt så som jag skrev om konvertering mellan dec och binärt. Men den vägen kanske är lättare att gå om man varken har räknare eller dator eftersom divison med 2 är relativt simpelt jämfört med division med 16.
Tackar för de som tyckte att man tidigare gjort ett givande inlägg.
1 Guest(s)