V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  secondwtq  ›  全部回复第 1 页 / 共 123 页
回复总数  2453
1  2  3  4  5  6  7  8  9  10 ... 123  
我记得这个问题我很久之前折腾过,不过具体怎样忘了(当时也没搞 Numerics ),我翻了一下记录,有这么一篇论文:
dl.acm.org/doi/pdf/10.1145/128861.128862 The Euclidean Definition of the Functions div and mod
刚才搜到了这个
github.com/WebAssembly/design/issues/250 Semantics of signed integer divide and remainder · Issue #250 · WebAssembly/design · GitHub
根据这个 thread ,最早用 truncating division 的是 Fortran ,原因是早期机器上多不使用 2's complement 表示,truncating division 更好实现,C 出于和 Fortran 兼容的考虑,最后也用了 truncating division 。但是现在的 2's complement 表示上,Euclidean division 可能更好实现(见上面论文,另外两个都引用了 Guy Steele 的 Arithmetic Shifting Considered Harmful ,不过这个我还没看)。但是 truncating division 作为前 2's complement 时代的习惯保留下来了。

所以可能还真不是 C 带的头。至于是不是真的 Fortran 先干的我也不确定( Fortran 66 标准里面我没找到,77 里面倒是有,不过那时候已经有原始的 C 了),但是考古只考到 C 大概是不合格的,就算暴论也没上面那个 thread 有活。
另外上面的“好实现”指得是用 ASR 操作来模拟,硬件除法器有自己的算法,我还没看过。
这些语言的行为在它们自己的体系里是自洽的——比如 C 的浮点数转整数会直接把浮点部分切掉,而 C 的除法,商也是把浮点部分切掉,然后根据此算出余数。如果用传统香烟,啊不传统余数,那同时算出的商和余数会不满足 商*除数+余数=被除数 这一基本原则,这个问题显然更严重。
注意这个行为是 C99 之后才有的,之前没有定义,不过 C99 之前标准库里定义了 div() 函数,可以同时算出商和余数,是一直遵循这个行为的。主流实现比如 x86 的 idiv 指令应该一直都是这样。

C 标准库对浮点数还定义了 fmod() 和 remainder() 两个函数,两个采取了不同的定义,remainder() 函数对应的是 IEEE 754 标准定义的 remainder 操作。fmod() 函数我没有在标准里找到对应。

Python 虽然浮点强转整数也是切,但是貌似实际用得不多,默认的 / 不能整除时直接给浮点,// 和 % 也是一致的。

至于拿计算机语言强行追求贴合数学定义我觉得大可不必,光浮点数就很头疼。等下个 IEEE 754 标准更新之后,可能会有很多符合该标准的实现,但是可能大多数人不会用。
你平常买的冷冻的就有很多是进口的

普通人能接触到的最直接的渠道是去冷库买,有的商家也会阿里巴巴、咸鱼开店,少数淘宝开店。大部分是批发。
京东等平台,普通淘宝店,超市等都是加了中间商的。

便宜的是南美肉,俄罗斯的也有一部分,澳新北美的该是什么价还是什么价。
4 天前
回复了 nabanbaba 创建的主题 Linux 双系统 PC 机求推荐
Mini PC 加显卡有的,比如 ThinkCentre Neo Ultra ,不过这类溢价很高
51 天前
回复了 sbldehanhan 创建的主题 C++ 如何增强自己的程序设计水平?
你咋发到这个节点来了?
英文小说看得不多,语法没太大感觉,主要是很多生词
非要说的话我感觉 19 世纪作品类比民国汉语,莎士比亚类比明清小说(不过现在一般发行的那个时期的作品,正字法都是按照现代标准调整过的,原文也是只能看懂一半),再往前就是屈原了
@shakoon 你还真当真了 ... 不说别的,就 MSFT 自己的员工有几个这么干的?
C++ 的我知道一个 cpp-summit.org/en 2024 年全球 C++及系统软件技术大会 | 官方网站
不过 C++ 国外“友会”又多又强,什么 CppCon ,Meeting C++,C++ on Sea ,C++Now 都可以看看
isocpp.org/wiki/faq/conferences-worldwide Standard C++
另外 technically 来说 VS 并不是完全免费的,之前的 VS Express 现在没了,VS Community 商用受限(一些功能也依然有阉割)。
@Mithril 单说补全的话,VSCode 也能用 clangd ,clangd 本身不是专门为了某个 IDE 开发的。
但是问题也就在这,VS 的 C++ IntelliSense 的前端和编译器(一般 C++ 社区所指的 MSVC )前端貌似是两套代码,这意味着 IntelliSense 的前端可以专注于为补全场景优化。而对于 Clang 来说,离线编译是主要场景,clangd 是个附属品,于是就有了 #45 的各种问题。
VSCode 的官方 C++ 插件的 IntelliSense ,据说是和 VS 用的同一套代码,不过我没咋用过不好评价。

Debugger 和 Profiler 现在还差太远,没法比。
举个例子,DWARF 格式调试信息的符号表,一直都是线性存储的,也就是说如果你有个大项目,开调试器得先扫一遍全部调试信息。大家其实一直知道这个问题,比如 Apple 和 GNU 都有一些扩展加入哈希表之类的数据结构,Apple 的应该是默认打开的,但是 GNU 的貌似要额外加一些选项。这种加速结构进入标准是在最新的 DWARF5 中,然而依然是可选的。
72 天前
回复了 ckr2002 创建的主题 C++ mingw 具体做了什么?
MinGW 项目本体应该不包含 GCC ,它是提供一个能让 GCC 编译、运行的环境。
当然这个表述有点问题,因为既然你已经以这个目的做了一套环境,那么 by definition 你最好也提供一套 GCC 工具链。

至于 binutils 和 gcc 的 PECOFF 支持,这个大概跟 MinGW 直接关系不大,应该是其他人做好,然后 MinGW 编译出的 GCC 在 configure 时启用的。
@kenvix 超频是不是真的因为时序太紧导致错误也不一定,超频也会导致温度上升
你这个换到 DIY 上不就是插了四条 DDR5 然后开 XMP 结果 memtest 跑不过
照这么说我单条猛超也能做到同样的效果
个人觉得 AST 直接喂给 LLM 不太靠谱,应该说 AST 作为实现内部的细节,本身就没有固定表示(并且 serialize 成可读的文本之后会比源代码更加 verbose )。把 AST 里面提取的信息喂过去是可行的。

另外一点是所有这些方案都是代码中的静态信息,但是可以考虑附加运行时动态信息,比如主要功能调用路径、状态的典型取值等。
93 天前
回复了 ounxnpz 创建的主题 NAS 组了一个丐版 NAS,看看佬们还有没有更丐的
非要说的话系统盘可以用 U 盘的,个位数价格,或者找个闲置的或者活动送的之类的,固态就迫真缓存吧
@Tlaster 不过我觉得只要不追求全开源软件栈,掌机用 NV 的话问题其实也不大,因为虽然黄卡在 Linux 桌面上各种问题,但是游戏跑起来之后基本都不存在了,而掌机恰好就是不怎么需要桌面的那个。大概游戏对于 NV 再怎么说都是正经业务,Linux 桌面支持就随便搞搞。

我遇到过游戏中唯一明确由 NV 导致的问题就是 CK3/Vic3 等“现代” Clausewitz 游戏,在 XWayland 下运行会有 UI 闪烁,这个应该是因为 explicit sync 缺失导致的问题。我的解决方法是单开一个 X11 的 session 跑( Proton 跑 Windows 版本可能也能解决)。不过也就正好最近两个 Q ,explicit sync 已经进了 Wayland ,NV 的驱动和 KDE ,应该会好一点。
@Tlaster Windows 有过要出掌机版的入魔,不过我觉得相比于卷 AI ,MSFT 不一定看得上这个市场
玩什么洋垃圾 NAS 的不知道 Supermicro 不太可能

应该主要是 AI 服务器需求驱动,INTC 就没怎么蹭上

还有个有点冷的 APH ,不过这家业务貌似比较多元,跟洋垃圾佬的关系是有两根 U2 转 M2 的线 ...
@fugu37 #76 “正确的选择”就离谱,如果我既想要赚钱,又没有资本,还不想上班,对于我来说什么是“正确”的选择?
@ttimasdf #79 Linux 问题是一堆,但是假装 Proton 和 Winetricks 没人用,Deck 人均双系统就没必要了。这东西 85% 的单机游戏就是切一下版本的事,现在 PC 掌机也是遍地开花,Deck 纯性价比不占优,有 Win 系统需求的很多早被分流了
而且你要知道 Deck 双系统会有个存储共享的问题,原装系统没用的话直接扔掉装纯 Windows 不是更好,“双系统”只能说明就算有一定的 Windows 需求,SteamOS 使用率还是很高的。那问题来了,这些 SteamOS 用户该不会都是在用桌面模式吧?

倒不如喷喷 V 社自己都不出 Steam 的 Wayland 版
1  2  3  4  5  6  7  8  9  10 ... 123  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4113 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 45ms · UTC 05:17 · PVG 13:17 · LAX 21:17 · JFK 00:17
Developed with CodeLauncher
♥ Do have faith in what you're doing.