Dataformat

I datavitenskap er et dataformat måten en type data blir representert (kodet) , som en serie biter . For enkelhets skyld tolker vi denne sekvensen av biter som et binært tall , og vi sier ved snarvei at dataene blir representert som et tall. For eksempel er tegnet C vanligvis kodet som en sekvens der 3 biter er aktivert, som er skrevet 0100 0011 eller 67 i desimal .

Et dataformat er altså en (muligens standardisert ) konvensjon som brukes til å representere data - informasjon som representerer en tekst, en side, et bilde , en lyd , en kjørbar fil , etc. Det er en mal der data plasseres på bestemte steder, slik at verktøyet som leser dette formatet finner dataene der det forventes å finne det. Når disse dataene er lagret i en fil , blir det referert til som et filformat . En slik konvensjon gjør det mulig å utveksle data mellom forskjellige dataprogrammer eller programvare , enten ved en direkte forbindelse eller ved hjelp av en fil. Denne muligheten for å utveksle data mellom forskjellig programvare kalles interoperabilitet .

Typologi

Vi skiller et åpent format , hvis spesifikasjon er offentlig tilgjengelig, fra et lukket (eller ugjennomsiktig) format hvis spesifikasjon er hemmelig. Et lukket format tilsvarer vanligvis en enkelt programvare som er i stand til å utnytte den fullt ut.

Et annet skille skilles mellom et standardisert format, underlagt standardisering av en offentlig eller internasjonal institusjon ( ISO , W3C ) og hvilket som helst format, som kan bli en standard på grunn av populariteten. Et slikt format blir noen ganger senere standardisert som OpenDocument .

Et format sies å være proprietært hvis det er utviklet av et selskap, hovedsakelig for kommersielle formål. Et proprietært format kan åpnes (format PDF til Adobe for eksempel) hvis det publiseres, eller lukkes (formatet Doc fra Microsoft for eksempel). Men selv når spesifikasjoner blir offentliggjort, prøver bedrifter med opprinnelse til proprietære formater å opprettholde kontrollen enten ved regelmessig å foreslå nye mer forseggjorte versjoner (kontroll ved å opprettholde et teknologisk fremskritt), eller ved å bruke midler som er lovlige som patenter. Denne typen konkurransebegrensende praksis gjennom juridiske verktøy er tillatt i USA. Det er kontroversielt i Europa (se patenterbarhet for programvare ).

Antall formater

Hele tall

Et naturlig heltall er vanligvis bare representert i binær (i base 2), med den klassiske konverteringsregelen. I motsetning til naturlige heltall, er dataintegrerte endelige. Det er derfor bare mulig å representere tallene som tilhører intervallet definert av antall tilgjengelige bits. Når vi ønsker å representere et relativt heltall , forbeholder vi oss litt for å betegne tegnet (generelt bit lengst til venstre); dette blir da referert til som et "signert heltall". Mesteparten av tiden vil negative tall bli kodet ved hjelp av de to komplementregelen .

For eksempel, med en byte kan vi representere:

Merk at for å sammenligne to relative heltall kodet på denne måten, er det tilstrekkelig å utføre en eksklusiv ELLER med (10 000 000 i binær) på hver før testen.

Andre typer brukes også til å representere heltall, det er BCD- kodingen av utvidet form (ett siffer på en byte), eller komprimert (ett siffer på 4 biter). Selv om disse formatene er mindre effektive for beregninger enn det binære systemet som er beskrevet ovenfor, fordi de krever ytterligere instruksjoner for å reformatere resultatet av de aritmetiske operasjonene som er utført, brukes de fortsatt på mange systemer ( sentral datamaskin , DBMS, etc.) og administreres av. prosessorene, fordi de ikke er begrenset av antall bits som brukes av prosessoren for binær aritmetikk (8 bits, 16 bits, 32 bits, 64 bits osv.), og de beholder enhetens presisjon i motsetning til tallene ved flytende punkt .

Brøktal

En brøkdel er skrevet med en teller og en nevner, så to heltall. Dette kan imidlertid bare brukes i formell beregning.

Kommatall

For beregningen foretrekker vi å bruke datamaskin heltall i base to eller ti, der et komma griper inn, ved en variabel (deci-micro-nano-pico) eller fast (francs-centimes) posisjon.

For blandede tall er nummerkonvensjonen at i base n , "0, a  " betegner a × 1 / n (= a × n −1 ), "0.0 a  " betegner a × 1 / n 2 (= a × n - 2 ) ... For eksempel i base 10 ( n = 10), betegner "0.005" 5 × 10 −3 .

Dermed betegner tallet 0,001 i binær ( n = 2) 1 × 2 −3 = 0,125.

Så innen informatikk består den første løsningen i å tildele et visst antall biter til høyre de negative kreftene til 2.

En annen løsning er å bruke BCD- kodingen som for heltall med tanke på plasseringen av desimalpunktet i en fast posisjon, for eksempel for en 10-sifret koding, inneholder de åtte første sifrene heltall og de to siste desimaldelen. Denne posisjoneringen er helt vilkårlig og må administreres av programmereren for visninger eller beregninger, spesielt for multiplikasjoner, eller når to tall ikke er definert med samme antall sifre etter desimaltegnet. Det er denne typen data som vanligvis brukes i DBMS for DECIMAL-typen.

Tekstformater

Tekstene er dannet av tegn i endelige tall ( bokstaver , diakritikk , skilletegn ...), i det minste i europeiske alfabeter. Hvis det var enkelt å tilordne et tall til hvert tegn i alle regionale sammenhenger, ville denne {tegn → antall} konverteringen bli definert ved konvensjon i form av en tabell eller kodeside . I praksis, av interoperabilitetsårsaker, brukes mer sofistikerte kodingssystemer . Den mest brukte er den regionale kodesiden ASCII for engelsk, dens varianter og utvidelser fra andre land, så vel som Unicode .

Tekstene inkluderer også layout (avsnittjustering) og formatering ( skriftstype , størrelse osv.). Løsningen som generelt er vedtatt består i å definere kommandoord, instruksjoner, atskilt fra teksten med et spesialtegn. Så i HTML kalles instruksjoner "tags" og er lukket i vinkelparenteser <…> ; i LaTeX introduseres instruksjonene av en invertert brøkstang \. Som et resultat er noen tegn reservert for instruksjoner og kan ikke lenger være en del av teksten. det er da "fluktkoder", eller spesielle instruksjoner for å representere dem.

Fram til 2006 beholdt Microsoft Word- programvaren en annen måte å lagre formatering på: dataene (tekst og bilder) blir satt i rå (uten formatering) i dokumentet, og formateringen er definert i en del av dokumentet som kalles " seksjonsbrudd" . Seksjonsskiftet, bortsett fra å markere en endring i layout (kolonneskift, sideskift), er et usynlig område som inneholder pekere som tilordner formatering til en del av seksjonen. Denne rådata-lagringsløsningen ble historisk tatt i bruk på en tid da få andre løsninger eksisterte (tidlig på 1980-tallet). Dette var en tilnærming som ofte ble brukt for mange applikasjoner og knyttet blant annet til det lave nivået av lagringsstandarder. Erfaringen har imidlertid vist at denne tilnærmingen er veldig tungvint og en kilde til problemer (korrupsjon av dokumenter) for dokumenter som har omtrent 100 sider og mer. Hvis Microsoft har prøvd å beholde sin modell og få den til å utvikle seg litt etter litt for å unngå å ta alt tilbake til basen, har den nådd sine grenser. For 2007-utgaven vedtok Microsoft et nytt proprietært format, Open XML.

Bildeformater

Grunnlaget for fremstilling av bilder er analytisk geometri .

Punktkortformat

Det er mulig å kutte et bilde i elementære punkter, eller "  piksler  ", og tildele denne fargen en farge. Fargen er representert med et tall, fargen → antallkorrespondanse blir laget av en "palett".

Det er ubrukelig å gi koordinatene til punktene: hvis bredden på bildet er gitt i antall n punkter, representerer de første n- punktene den første linjen, punktene n +1 til 2 n representerer den andre linjen ... Det er da tilstrekkelig å fikse skanningsrekkefølgen etter konvensjon, i dette tilfellet den vestlige leseorden (fra venstre til høyre og fra topp til bunn).

Dette resulterer i et punktkartformatbilde , ofte referert til som et bitmapbilde . Det er derfor et lerret med punkter som hver tildeles en farget verdi. De store forskjellene mellom de eksisterende formatene er fargedybden (1 bit: svart eller hvit, 8 bits: 256 farger, 24 bits: 16 millioner farger ...) og typen komprimering (uten komprimering eller rå , med komprimering etter mønstre, med destruktiv komprimering ...)

Tenk for eksempel på et svart-hvitt kart (1 for formfarge, 0 eller · for bakgrunnsfarge) som definerer et bilde fem poeng bredt med følgende tallsekvens:

1000101010001000101010001

Dette kartet må kuttes i grupper på 5 biter:

1· ▓░ █· ⟵ Symboles de notation pour l'explication un tramé plein ⟵ Notation du 1 point tramé point ⟵ Notation du 0 · 1···1 ▓░░░▓ █···█ ·1·1· ░▓░▓░ ·█·█· ··1·· ░░▓░░ ··█·· ·1·1· ░▓░▓░ ·█·█· 1···1 ▓░░░▓ █···█

som gir oss tegningen av en "X" i "formfarge" på en "bakgrunnsfarge" bakgrunn. Imidlertid indikerer ingen bit fargen her, så fargen på gjengivelsen avhenger av teknologien som brukes og konfigurasjonen av den.

Den dataformatet må derfor inneholde, i tillegg til listen over punkter, bredden av bildet og beskrivelsen av paletten; dette gjøres vanligvis i starten av filen (vi snakker om filen "header").

Noen kjente rasterbildeformater: Portable Network Graphics , JPG , BitMaP , Portable pixmap .

Vektorformat

Et bilde i vektorformat er et bilde som er beskrevet av sett med matematiske koordinater og ikke av et lerret med punkter. For eksempel :

I tillegg er informasjon om banen nødvendig: de grafiske attributtene er tykkelsen, stilen (kontinuerlig eller stiplet), fargen på linjen, dens gjennomsiktighet osv.

Et vektorbilde er derfor et sett med koordinater, attributter og kommandoer som skjermprogrammet (på skjermen eller på papiret) er ansvarlig for å tolke.

For bilder som lett kan reduseres til geometriske former (typografi, kartografi, etc.), er vektorformatet ekstremt økonomisk.

Det særegne med vektorformater er at deres endelige gjengivelse bare avhenger av oppløsningen til utdataenheten. Denne typen bilder kan også forstørres uten forstyrrende effekter; det er ingen “rasterisering” -effekt (diagonale eller buede linjer vises ikke som en trapp).

Noen kjente vektorformater: VML , SVG , Adobe PDF (Acrobat), Adobe Illustrator , innkapslet postscript EPS , Quark QXD , Silverlight og Macromedia Flash (vektoranimasjonsformater), AutoCAD DXF .

Fargegjengivelse

Videoformater

3D-sceneformater

Representasjonen av virtuelle objekter som er opprettet av 3D modellering programvare krever en bestemt dataformat fordi de tidligere formatene er uegnet. For å representere et 3D-objekt trenger du i det minste en beskrivelse:

Å representere en scene krever også å spesifisere belysningen som brukes, objektenes relative posisjon, eventuelle miljøeffekter, men fremfor alt dens hierarkiske struktur (koblinger mellom elementene).

De første de facto standardformatene var formater tilpasset CAD: objektet defineres ved hjelp av fasetter eller analytiske overflater. Det er tilstrekkelig å definere opprinnelsen og deretter de karakteristiske koordinatene til elementene i det tredimensjonale rommet. For eksempel, i Autocads DXF-format , er et objekt en serie med navngitte enheter som består av en liste over punktene X, Y, Z. Ved indeksering dannes trekantfasetter eller linjer som er basert på disse punktene.

Hvis dette formatet var tilstrekkelig for teknisk tegning, var det helt uegnet for virtual reality. På 1990-tallet publiserte selskapet Silicon Graphics (produsent av 3D-grafikk arbeidsstasjon ) Inventor- formatet som inkluderte de fleste av de nødvendige elementene. Dette formatet utviklet seg til VRML- formatet som ble standardisert.

I tillegg ble 3D Studio ASCII- formatet også publisert, men eksplosjonen av 3D-markedet fødte en rekke proprietære formater. For brukeren var problemet ofte å konvertere en modell fra ett format til et annet uten å miste for mye informasjon. Noen selskaper har til og med spesialisert seg på denne typen konvertering.

For øyeblikket, i den profesjonelle verden, er det ikke noe enkelt format, men mer eller mindre brukte formater, avhengig av type applikasjon. For eksempel :

Imidlertid er de fleste 3D-modellerere mer eller mindre i stand til å lese (Import) og lage (Eksport) flere formater: dette er et viktig valgkriterium. Blant de vanligste formatene kan vi nevne:

Den nåværende trenden er å favorisere et beskrivende XML- format . 3D - dataformatet kalles da beskrivende språk som X3D (utvikling av VRML med XML-formatering).

Det gratis COLLADA- formatet gjør det også mulig å utveksle data mellom annen programvare. Spesielt er det en importør / eksportør for Blender .

Lydformater

Lydformatene er delt inn i tre deler:

(Se kapittelet Klassiske formater )

Datakomprimering

Datakomprimering er teknikken for å transformere data slik at den tar mindre plass. Siden data må dekomprimeres før de behandles, går dette på bekostning av hastighet, og med større risiko for tap av data .

Grunnideen er at generelt blir elementer gjentatt i filene. Det er derfor fordelaktig å representere elementene som ofte gjentar seg med mindre tall (det vil si å ta færre biter).

Vi kan skille mellom to typer komprimering:

Klassiske formater

Filformater
Kategori Formater
Bilder PNG , MNG , TIFF , JPEG , GIF , TGA , OpenEXR , BMP , FITS
Vektortegning VML , SVG , Silverlight , SWF , AI , EPS , DXF
3d XCF , BLEND , SKP, (SKB) , DXF , 3DS Max , C4D , VRML , X3D , IFC , DWG
Hans OGG , FLAC , MP3 , WAV , WMA , AAC
Video MPEG , OGM ( DVD , DivX , XviD ), AVI , Theora , FLV
Side PDF , PostScript , HTML , XHTML , XML , PHP
Tekstbehandlingsdokument ODT , TXT , DOC , RTF
Kjørbar BIN , ELF , EXE , SDC , BAT
Arkiv (vanligvis komprimerte filer) 7Z , TAR , GZIP , ZIP , LZW , ARJ , RAR , SDC
Arkiv for tegneserier
(formater identiske med arkivformatene de er basert på:
bare filtypen er forskjellig)
CB7 (.cb7), 7z- basert
CBA (.cba), ACE- basert
CBR (.cbr), RAR- basert
CBT (.cbt), TAR- basert
CBZ (.cbz), ZIP- basert

Dataformater og personvern

Når en fil overføres til andre mennesker, kan noen filformater utgjøre en IT- risiko for personvernet til filskaperen . Faktisk inkluderer noen i deres dataformat personlig informasjon som navnet på datamaskinen og brukerens.

Dette skjer oftest når du bruker kontorprogramvare . Når det gjelder denne programvaren, er det ikke bare navnet på personen som opprettet filen som er lagret, men også den personen som endret den etterpå.

Sjeldnere inneholder HTML- filer noen ganger også personlig informasjon, spesielt når de eksporteres fra kontorprogramvare (eksempel: Microsoft Word). Det er imidlertid enkelt å bekrefte dette ved å vise HTML-koden.

Eksempler på dataformat som inneholder "skjult informasjon"

Microsoft tilbyr informasjon for å fjerne personlige data som er skjult i filer:

Merknader og referanser

  1. Viviane Boulétreau og Benoît Habert , "  Les formats  " , på http://www.parcoursnumeriques-pum.ca ,15. mars 2014(åpnet 21. oktober 2020 )
  2. Viviane Boulétreau og Benoît Habert, “The formats” , i Michaël E. Sinatra og Marcello Vitali-Rosati, Practices of digital publishing , PUM,2014, 219  s. ( ISBN  978-2-7606-3202-8 )
  3. (i) Donna Baker, Hva annet står i dokumentet ditt?  ” , AcrobatUsers.com, 20. juli 2011.
  4. http://office.microsoft.com/en-us/help/remove-hidden-data-and-personal-information-from-office-documents-HA010037593.aspx .
  5. http://office.microsoft.com/en-us/starter-help/remove-hidden-data-and-personal-information-by-inspecting-workbooks-HA010354331.aspx .
  6. (fr) http://office.microsoft.com/fr-fr/word-help/supprimer-des-donnees-masquees-et-des-informations-personnelles-en-inspectant-des-documents-HA010354329.aspx
  7. (no) http://office.microsoft.com/en-us/word-help/remove-hidden-data-and-personal-information-by-inspecting-documents-HA010354329.aspx .
  8. "  Forhindre informasjonslekkasje og bedriftssporing  " , på vieprivee.com (åpnet 12. august 2020 ) .
  9. http://www.microsoft.com/en-us/download/details.aspx?id=8446 .

Vedlegg

Relaterte artikler

Eksterne linker