Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 22. 10. 2023 14:40

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Ascii kód, Big Endian

Proveďte převod zadaných dat do požadovaných výstupů.
a)V grafickém SW GIMP byl vytvořen následný 2D rastrový objekt, který byl exportován do verze binárního formátu BMP pod názvem souboru "vystup.bmp". Ze souboru byla vyčtena vybraná data. Daná data jsou zapsána v šestnáctkové číselné soustavě, přičemž je u nich vždy uveden také jejich datový typ a režim, tj.
# ) Identifikace BMP souboru: 42 4D
Datový typ char (8 bitů), tj. znaky ve formátu ASCII, režim Big Endian.
#) Velikost souboru: 1A 28 00 00
Datový typ uint32 (32 bitů, neznaménkový), režim Little Endian.
#)Šířka obrázku: 80 02 00 00
Datový typ uint32 (32 bitů, neznaménkový), režim Little Endian.
#)Výška obrázku: E0 01 00 00
Datový typ uint 32 (32 bitů, neznaménkový), režim Little Endian.
Určete výsledné hodnoty z vybraných vyčtených dat.

Nastoupila jsem na vš, vůbec netuším co s tím, poprosím o pomoc, děkuji předem.

Offline

 

#2 22. 10. 2023 19:45

check_drummer
Příspěvky: 4650
Reputace:   101 
 

Re: Ascii kód, Big Endian

↑ Jull6:
Ahoj, rozumíš pojmům v zadání? Pokud ne, doporučuji nastudovat. Rozumíš otázce? Pokud ne, zeptej se zadávajícího.


"Máte úhel beta." "No to nemám."

Offline

 

#3 22. 10. 2023 20:21 — Editoval Jull6 (22. 10. 2023 20:22)

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ check_drummer: Ne, nevím jak se jmenuje téma zadání? A bohužel i když nastuduji co je ASCII kód a big endian a já nevím tak pořád nevím jak to řešit. Ráda bych se zeptala zadávajícího, ale na to není časový prostor... zadává další úkoly.  Ale děkuji za odpověď.

Offline

 

#4 22. 10. 2023 22:14 — Editoval Aleš13 (22. 10. 2023 22:28)

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Jull6:Do jakého předmětu to má být? Přijde mi to lehce matoucím způsobem zadané. :D

Ta informace k prvnímu řádku, že je to low endian je úplně k ničemu, to čím to začíná je "magická konstanta" 42 4D, ta se bere v pořadí jak je zapsána, takže endian nehraje roli. Podívej se do ASCII tabulky co to znamená - nejsou to čísla, ale dvě písmena (tak si je vymyslel autor formátu BMP, netřeba nad tím dál hloubat).

Na druhém řádku máš číslo 1A 28 00 00. Little endian znamená, že abys s tím mohla normálně po lidsku pracovat, musíš si to přeuspořádat do pořadí Big endian na 00 00 28 1A. Ten Little endian byl takhle vymyšlený aby se registr o délce 32 bitů, který obsahuje 16bitovou hodnotu dal uložit nebo načíst z paměti jak 32bitovou, tak 16bitovou operací. Dnes téměř k ničemu, ale kvůli kompatibilitě to budeme udržovat ještě příštích tisíc let. Když to máš v Big endian, můžeš to buď naťukat do kalkulačky ve windows v programátorském režimu, nebo si to růčo spočítat jako polynom, nebo to předhoď wolframu alpha s prefixem 0x (tj. 0x0000281A). Další řádky zpracuješ úplně stejně. Mám pocit, že v tom cvičení jde jen o převod z hexadecimální do dekadické soustavy zpestřený endiany a kecy okolo :D

Podle toho co píšeš soudím, že v binárních formátech nejsi moc doma. Doporučuju přečíst https://en.wikipedia.org/wiki/Two%27s_complement . V tom tvém příkladu sice žádné záporné číslo není, ale píše se tam, že je to signed, takže by být mohlo a je dobré vědět, co to obnáší.

EDIT: kecám, je to tam unsigned, ale stejně si to přečti :D

Offline

 

#5 22. 10. 2023 22:29

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Aleš13:
Teorie přenosu informace se jmenuje předmět, moc děkuji za odpověď, akorát asi neumím ve Windows programátorskou kalkulačku nebo spočítat jako polynom nějaká rada ještě k tomu? Jinak moc děkuji.

Offline

 

#6 22. 10. 2023 22:37

check_drummer
Příspěvky: 4650
Reputace:   101 
 

Re: Ascii kód, Big Endian

↑ Jull6:
Máte na to nějaká skripta? Na VŠ si musíš hodně informací zjišťovat sama a nečekat že ti to vše někdo automaticky řekne....


"Máte úhel beta." "No to nemám."

Offline

 

#7 22. 10. 2023 22:42 — Editoval Aleš13 (22. 10. 2023 22:43)

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

Ale wolframalpha.com určitě znáš :-)

K tomu polynomu, podívej se sem: https://cs.wikipedia.org/wiki/%C5%A0est … 1_soustava

Počítá se to potom jako
2*16^3 + 8*16^2 + 1*16^1 + A*16^0
(těch 16^0 je tam jen pro ozdobu :-))
nebo si to můžeš přepsat do Hornerova schématu, ať nemusíš pořád počítat ty mocniny. Ale v teorii přenosu informace je stejně budeš za chvíli umět nazpaměť :D Určitě si to zkus počítat tím polynomem, ať víš o co jde.

Offline

 

#8 23. 10. 2023 09:32

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Aleš13: Neznám i wolframalpha vidím prvně.Ale děkuji.

Offline

 

#9 23. 10. 2023 09:42

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ check_drummer: Nemáme takže nevím. A ano to jsem si všimla.

Offline

 

#10 23. 10. 2023 09:53

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Aleš13: A koukala jsem na to 424D ASCII ale stejně nevím jak to přepsat?

Offline

 

#11 23. 10. 2023 10:25

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

Není to 424D ale 42, 4D :-) Třeba v tabulce https://simple.m.wikipedia.org/wiki/Fil … -Table.svg , není to úplně typické grafické uspořádání, ale je z toho zřejmější co je tím míněno. Hledat to za tebe nebudu, ale můžeš sem pro kontrolu napsat co ti vyšlo.

Offline

 

#12 23. 10. 2023 10:35

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

Tak 42 je 2A hexadecimalne ale 4d už je hexadecimálně ?nebo jako 66,77? Jistě, děkuji.

Offline

 

#13 23. 10. 2023 10:41 — Editoval Aleš13 (23. 10. 2023 10:47)

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

Obojí je zadané hexadecimálně (ze zadání "v šestnáctkové číselné soustavě"), výsledkem mají být znaky (to je dáno tím "Datový typ char (8 bitů)"), nejspíš to budou nějaká písmena. Ten kód ASCII je způsob (jeden z několika obecně používaných způsobů) jak do počítače uložit písmena, když počítač nativně pracuje jenom s čísly.

Offline

 

#14 23. 10. 2023 10:47

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Aleš13: B,M ? :)

Offline

 

#15 23. 10. 2023 10:48

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

Jo, přesně tak. Dokonce to i odpovídá skutečnému formátu BMP (zbytek zadání už tolik ne), kde je řetězec "BM" použitý pro identifikaci formátu třeba při výpisu souboru (dump).

Offline

 

#16 23. 10. 2023 10:53

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

↑ Aleš13: Dobře, děkuji moc budu se snažit tomu porozumět a ten příklad jak se násobí polynomy ty mocniny to je ke kterému tomu zadání prosím?

Offline

 

#17 23. 10. 2023 10:59

Aleš13
Příspěvky: 333
Reputace:   
 

Re: Ascii kód, Big Endian

To jsou ty tři řádky "Datový typ uint 32 (32 bitů, neznaménkový)". Jen formalita, nenásobí se polynomy (to tě nejspíš v tomhle předmětu čeká pozdějí), jenom se vyčíslují. Prostě to máš převést z šestnáctkové soustavy do desítkové.

Offline

 

#18 23. 10. 2023 11:01

Jull6
Zelenáč
Příspěvky: 10
Pozice: Stud
Reputace:   
 

Re: Ascii kód, Big Endian

Dobře děkuji moc za pomoc.

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson