huf Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Ja, hva er det egentlig, når man snakker om å legge inn binærkode osv.? Lenke til kommentar
Legion Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 binærkode vil si koding med et alfabet bestående av to tegn, i praksis så er nesten alltid snakk om 0 og 1, men hvilke tegn spiller egentlig ingen rolle. Strengen 001011001110001 er et eksempel Lenke til kommentar
Langbein Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Ja, hva er det egentlig, når man snakker om å legge inn binærkode osv.? Binærkode vil si maskinkode, altså kode som datamaskinen forstår. Til gjengjeld er slik kode vanskelig å skjønne for mennesker. Koden er også forskjellig på ulike prosessorarkitekturer. Mange linux-distroer finnes til i386, PowerPC, Alpha osv. og det går naturlig nok ikke an å kjøre kode kompilert for andre prosessorer. Det motsatte av binærkode er kildekode, som altså er skrevet i et eller annet programmeringsspråk (f.eks C, C++, Pascal, Fortran osv.) Slik kode er mye enklere å lese for mennesker, men kan ikke umiddelbart forstås av en datamaskin, og må derfor til syvende og sist oversettes til objektkode/maskinkode/binærkode av en kompilator*. Denne prosessen er mer eller mindre enveis - man kan drive reverse-engineering ved å bruke en decompiler/disassembler eller liknende, men mye informasjon går tapt når man kompilerer kode (f.eks forsvinner alle kommentarer, og variabelnavn kan også forsvinne), slik at det kan være en tungvint prosess. Mao spar på kildekoden til egenutviklede programmer i tilfelle du ønsker å modifisere dem seinere * Det finnes også interpretede språk som Perl, Python, Tcl og Basic som ikke kompileres men isteden tolkes på "direkten". Lenke til kommentar
gspr Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Ja, hva er det egentlig, når man snakker om å legge inn binærkode osv.? Det er ikke så mye "binærkoding" som "binærregning". Det handler om å bruke det binære tallsystem for å uttrykke noe. Som kjent bruker vi til vanlig titallssystemet, hvor vi har 10 sifre; 0-9. Et tall bestående av N sifre vil da kunne uttrykke 10^N verdier. I det binære tallsystem har vi kun to sifre, 0 og 1. Dette er med andre ord det mest elementære tallsystem som man kan ha. Et tall skrevet på binærform med N sifre, vil kunne uttrykke 2^N verdier. Et binært siffer, 0 eller 1, kaller vi en bit (binary digit). Noen ganger ser man folk skrive ord på binærform for å virke kule. Datamaskiner kan bruke for eksempel ASCII-systemet for å gjøre tall (som jo er alt en datamaskin forstår) til bokstaver. Her nummereres 256 forskjellige tegn fra 0 til 255 (en oversikt kan du finne på www.asciitable.com). For eksempel ser vi at bokstaven 'H' har tallet 72. Datamaskiner behandler endimensjonale strømmer av 0 og 1. Det er blitt bestemt at "1 byte" er 8 bits. Altså er en byte en serie av 8 1'ere eller 0'ere. Som jeg skrev tidligere, vil et binært tall med 8 sifre kunne uttrykke 2^8=256 forskjellige verdier. Vi ser at dette samsvarer med antall tegn i ASCII-systemet. Med andre ord må hver bokstav (hvis man følger ASCII-systemet) beskrives med en serie av 8 sifre, som enten er 0 eller 1, og tar altså opp 1 byte. Når noen sier at de skal skrive "'Hei' i binærkode", mener de at de skal skrive verdiene for 'H', 'e' og 'i' ifølge ASCII med binære tall. Vi får altså: H (72, som skrevet med binær blir 01001000) e (101 --- 01100101) i (105 --- 01101001) Altså: 010010000110010101101001 Det er viktig å være obs på at linjen over, som er 24 bits lang, bare betyr "Hei" dersom man ser på det gjennom ASCII-øyne, og 'vet' at den inneholder 3 verdier (72, 101, 105), og ikke er én stor verdi, nemlig verdien som vi ville skrevet som 4744553 på titallssytemet. Jah... fløt kanskje litt vekk fra spørsmålet ditt nå, men jeg var så godt i gang! :wink: Lenke til kommentar
gspr Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Så nå at dette lå under Linux-forumet, og da mente du nok binær som i "install the binaries"... hehe... plukket det fra "siste posts" da jeg svarte, så svaret mitt var nok litt off-topic. Beklager. Lenke til kommentar
Egil.B Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Svaret er da høyst relevant chaere GoE/gspr. Det har jo allerede kommet fram at binærkode er 101010111011011 tidligere i tråden, da er det jo kjekt med litt mer in depth info. Kjekt å kunne lære noe på en søndag også Lenke til kommentar
huf Skrevet 20. juli 2003 Forfatter Del Skrevet 20. juli 2003 Takker for flotte svar. Men hvordan fungerer egentlig dette "install the binaries" da? Lenke til kommentar
DummeGaas Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 Takker for flotte svar. Men hvordan fungerer egentlig dette "install the binaries" da? Binaries i denne forstand er ferdigkompilert kode - kode allerede kompilert for din arkitektur. Lenke til kommentar
FreeBSD Skrevet 20. juli 2003 Del Skrevet 20. juli 2003 * Det finnes også interpretede språk som Perl, Python, Tcl og Basic som ikke kompileres men isteden tolkes på "direkten". For ikke å glemme .NET-teknologien fra våre gode venner i Seattle, som benytter et IL-språk, som eksekveres innenfor etrammeverk. Ikke det dummeste de har funnet på. Programmerer mye C# under FreeBSD, og det er et meget godt språk. C# ble kjøpt opp av en dansk programmerer - "C++"-utvidelsen av det gamle C er også utviklet av en danske, så de har sannelig taket på dette Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå