Společnost OpenAI představila svůj nejnovější AI model GPT-4o (o jako omni, tj. vše). Nově také "vidí" a "slyší". Videoukázky na 𝕏 nebo YouTube.
Ondřej Filip publikoval reportáž z ceremonie podpisu kořenové zóny DNS. Zhlédnout lze také jeho nedávnou přednášku Jak se podepisuje kořenová zóna Internetu v rámci cyklu Fyzikální čtvrtky FEL ČVUT.
Společnost BenQ uvádí na trh novou řadu monitorů RD určenou pro programátory. První z nich je RD240Q.
Byl aktualizován seznam 500 nejvýkonnějších superpočítačů na světě TOP500. Nejvýkonnějším superpočítačem nadále zůstává Frontier od HPE (Cray) s výkonem 1,206 exaFLOPS. Druhá Aurora má oproti loňsku přibližně dvojnásobný počet jader a dvojnásobný výkon: 1,012 exaFLOPS. Novým počítačem v první desítce je na 6. místě Alps. Novým českým počítačem v TOP500 je na 112. místě C24 ve Škoda Auto v Mladé Boleslavi. Ostravská Karolina, GPU
… více »GHC (Glasgow Haskell Compiler, Wikipedie), tj. překladač funkcionálního programovacího jazyka Haskell (Wikipedie), byl vydán ve verzi 9.10.1. Přehled novinek v poznámkách k vydání.
Po 9 týdnech vývoje od vydání Linuxu 6.8 oznámil Linus Torvalds vydání Linuxu 6.9. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna. Později také na Linux Kernel Newbies.
Byla vydána verze 0.2.0 v Rustu napsaného frameworku Pingora pro vytváření rychlých, spolehlivých a programovatelných síťových systémů. Společnost Cloudflare jej letos v únoru uvolnila pod licencí Apache 2.0.
Open source RDP (Remote Desktop Protocol) server xrdp (Wikipedie) byl vydán ve verzi 0.10.0. Z novinek je vypíchnuta podpora GFX (Graphic Pipeline Extension). Nová větev řeší také několik bezpečnostních chyb.
Rocky Linux byl vydán v nové stabilní verzi 9.4. Přehled novinek v poznámkách k vydání.
Dellu byla odcizena databáze zákazníků (jméno, adresa, seznam zakoupených produktů) [Customer Care, Bleeping Computer].
#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: