Po pěti měsících vývoje byla vydána nová verze 0.15.1 programovacího jazyka Zig (GitHub, Wikipedie). Verze 0.15.0 byla přeskočena. Přispělo 162 vývojářů. Přehled novinek v poznámkách k vydání.
Před sedmi lety společnost Valve představila fork projektu Wine s názvem Proton umožňující v Linuxu přímo ze Steamu hrát počítačové hry do té doby běžící pouze ve Windows. Aktuální přehled podporovaných her na stránkách ProtonDB
Společnost DuckDuckGo rozšířila svůj AI chat Duck.ai o GPT-5 mini (𝕏). Duck.ai umožňuje anonymní přístup bez vytváření účtů k několika modelům umělé inteligence. Aktuálně k GPT-4o mini, GPT-5 mini, Llama 4 Scout, Claude Haiku 3.5 a Mistral Small 3.
Marek Tóth v příspěvku DOM-based Extension Clickjacking: Data ve správcích hesel v ohrožení na svém blogu popsal novou clickjacking techniku s několika variantami útoků a otestoval ji proti 11 správcům hesel. Výsledkem bylo nalezení několika 0-day zranitelností, které mohly ovlivnit uložená data desítek milionů uživatelů. Jedno kliknutí kdekoliv na webové stránce kontrolované útočníkem umožňovalo ukrást uživatelská data ze
… více »Na dnešní akci Made by Google 2025 (YouTube) byly představeny telefony Pixel 10 s novým čipem Google Tensor G5 a novými AI funkcemi, hodinky Pixel Watch 4 a sluchátka Pixel Buds 2a.
The Document Foundation oznámila vydání nové major verze 25.8 svobodného kancelářského balíku LibreOffice. Podrobný přehled nových vlastností i s náhledy v poznámkách k vydání (cs) a také na Youtube a PeerTube.
Zeek (Wikipedie), původně Bro, byl vydán v nové major verzi 8.0.0. Jedná se o open source platformu pro analýzu síťového provozu. Vyzkoušet lze online.
Byl vydán Mozilla Firefox 142.0. Přehled novinek v poznámkách k vydání a poznámkách k vydání pro vývojáře. Řešeny jsou rovněž bezpečnostní chyby. Nový Firefox 142 je již k dispozici také na Flathubu a Snapcraftu.
Python Developers Survey 2024, výsledky průzkumu mezi vývojáři v Pythonu organizovaném Python Software Foundation ve spolupráci se společností JetBrains v říjnu a listopadu loňského roku. Zúčastnilo se 30 tisíc vývojářů z 200 zemí. Linux používá 59 % z nich.
#include <cstdio> #include <iostream> int main(int argc, char** argv) { float f = 1.23456f; unsigned int raw_f; char* raw_f_cstr; /* raw_f = *(unsigned int*)&f; <- Starý Cčkový způsob */ /* C++ovější způsob */ raw_f = *reinterpret_cast<unsigned int*>(&f); /* Jako unsigned int */ std::cout << f << " " << raw_f << " " << std::hex << raw_f << std::endl; /* Převod na Cčkový string */ asprintf(&raw_f_cstr, "%x", raw_f); std::cout << raw_f_cstr << std::endl; return 0; }Jen tak mimochodem, převádět hexadecimální řetězec do binárního switchem je trochu dřevorubecké, udělal bych to spíš takhle
#define BITS_IN_INT (sizeof(int) * 8) #define MAX_HEX_NUMS (sizeof(int) * 2) std::string hex_to_bin(const std::string s) { size_t steps; size_t sl; std::string bin_out; sl = s.length(); if (sl == 0) return ""; steps = sl / MAX_HEX_NUMS; if (!(sl % MAX_HEX_NUMS)) steps--; bin_out.reserve((steps + 1) * BITS_IN_INT + 1); for (size_t idx = 0; idx <= steps; idx++) { int num; size_t from_idx = MAX_HEX_NUMS * idx; std::string ss = s.substr(from_idx, MAX_HEX_NUMS); if (sscanf(ss.c_str(), "%x", &num) < 1) { std::cout << "Invalid input" << std::endl; return ""; } for (size_t sidx = 0; sidx < BITS_IN_INT; sidx++) { if (num & (1 << (BITS_IN_INT - sidx - 1))) bin_out.append("1"); else bin_out.append("0"); } } return bin_out; }
mantissa = input & 0x7fffff; exponent = input >> 24; sign = (input >> 23) & 1; result = sign * mantissa * exponent * 2e-23
Zatim mi ale nenapada ta obracena cesta, tedy z cisla ziskat ten hex-string. (a nejaky takovy srozumitelny navod jsem nenasel).A v čem máš problém? Vždyť je to napsaný v tom dokumentu. A proč nemůžeš vzít normální IEEE float a prostě přehodit exponent a sign?
Tiskni
Sdílej: