宽为零
公开化「整数」而「爻」
文言:软浮点:IEEE 754 双精度与单精度之加减乘除与整数之互转,唯用整数指令;舍入取就近偶;单精度由 浮格_格式 切换。汉语:软浮点(binary64 与 binary32,就近舍入到偶;浮格_格式 为 0 是 binary64,为 1 是 binary32,只有 Wasm 的 f32 指令临时置 1)。双精度按 [低字, 高字] 存于 8 字节槽,函数参数是槽地址。内部把有限数解包成“符号、指数、64 位尾数”:尾数的首位 1 放在第 62 位(低 10 位是保护位),值 = 尾数/2^62 × 2^指数;运算后统一由 浮打包 归一、舍入、组装,处理次正规数与上溢。特殊值:非数结果一律为安静非数(0x7FF8000000000000;单精度 0x7FC00000),两零相加取正零(就近舍入),零与非零之和取非零者。
宽前导零
公开化「整数」而「整数」
暂无说明。
宽粘右移
公开化「整数」而化「整数」而「有」
文言:右移而存粘:被移出者非零,则末位置一。汉语:把槽里的 64 位无符号数右移 位 位(位 ≥ 64 则只剩粘位),被移出的位有非零就把最低位置 1(“粘位”),用于舍入判断。
解包次正规
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
文言:解包:双精度之槽,拆为符号、指数、尾数与类别。汉语:解包:把双精度槽 源 拆成 符号(格+0)、无偏指数(格+4)、类别(格+8:0 零,1 有限,2 无穷,3 非数),有限数的尾数写入 尾 槽(首位 1 在第 62 位);次正规数先归一。
文言:次正规数归一:基指者,次正规数之指数(双精度为 -1022,单精度为 -126)。汉语:次正规数归一:尾 槽里首位 1 不在第 62 位,左移到第 62 位,指数为 基指 减去移位数;帧 是小数位(为零则是零)。
浮解包双
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮解包单
公开化「整数」而化「整数」而化「整数」而「有」
文言:单精度之解包:位型在源槽之低字,尾数置于第 39 位起,余同双精度。汉语:binary32 解包:位型取源槽低字,23 位小数放到尾槽第 39 位起(首位 1 仍在第 62 位),次正规数的基指是 -126,特殊值类别同双精度。
浮解包
公开化「整数」而化「整数」而化「整数」而「有」
文言:解包依当前格式。汉语:按 浮格_格式 选择双精度或单精度解包。
浮存无穷
公开化「整数」而化「整数」而「有」
文言:特殊值之存,随当前格式。汉语:把无穷(符号 符)、非数、带符号的零写入结果槽;单精度时写低字、高字置零。
浮存非数
公开化「整数」而「有」
暂无说明。
浮存零
公开化「整数」而化「整数」而「有」
暂无说明。
浮舍入组装
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
文言:打包:尾数、指数、符号,归一、舍入、组装为双精度。汉语:打包(就近舍入到偶):尾 槽里是首位 1 在第 62 位或第 63 位的非零 64 位数(低 10 位为保护位,最低位可以是粘位),值 = 尾/2^62 × 2^指;先把第 63 位的情形右移一位,再按有偏指数处理上溢(成无穷)与下溢(右移成次正规数),舍入后若进位越界则再调整,最后组装到果槽。
浮舍入组装单
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
文言:单精度之舍入组装:小数最低位在第 39 位,保护位三十九(第 38 位为半位)。汉语:binary32 的舍入组装:小数最低位是第 39 位,保护位是第 0–38 位(半位在第 38 位);就近舍入到偶,次正规数与进位越界的处理同双精度;结果低字为位型、高字置零。
浮打包
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮特殊加减
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「有」
文言:加减:解包二数,先辨特殊,再对阶、加减尾数,归一而打包。汉语:浮加减:果 = 甲 + 乙(作减 为零)或 甲 - 乙(作减 非零)。特殊值:任一为非数得非数;无穷加异号无穷得非数;一个无穷得该无穷;两零得零(异号取正零);一个零得另一个。有限数:绝对值大者为“大”,小者尾数右移(指数之差)位并存粘位;同号相加,异号相减(差为零得正零,否则左移归一)。
浮有限加减
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮加减
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
乘三二
公开化「整数」而化「整数」而化「整数」而「有」
文言:乘:六十四位相乘得一百二十八位,取其高位而存粘位。汉语:乘法:两个首位在第 62 位的 64 位尾数相乘得 128 位积(首位在第 124 或 125 位),右移 62 位得到首位在 62 或 63 位的 64 位数,被移出的位有非零则置粘位;指数相加;符号异或。特殊值:非数得非数;无穷乘零得非数;无穷得无穷;零得零。
乘全
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮特殊乘
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮乘
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
除逐位
公开化「整数」而化「整数」而化「整数」而「有」
文言:除:六十四次逐位试商,得六十四位商,余非零则存粘位。汉语:除法:尾数甲除以尾数乙(比值在 (0.5, 2)):先看整数位(余 ≥ 除数则商 1、余减除数),再做 63 次“余左移一位,余 ≥ 除数则商位 1、余减除数”,得 64 位商 Q = ⌊甲×2^63/乙⌋(首位在第 62 或 63 位),最后余非零则最低位置粘位;指数为 甲指 - 乙指 - 1;符号异或。特殊值:非数得非数;无穷除无穷、零除零得非数;无穷除有限得无穷;有限除无穷得零;有限除零得无穷;零除有限得零。
浮特殊除
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮除
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
整转浮核
公开化「整数」而化「整数」而化「整数」而「有」
文言:整数与浮点之互转。汉语:整数转浮点:有符号 64 位整数(槽)转双精度,就近舍入;浮点转整数:向零截断,非数得零,超范围饱和到 64 位有符号整数的极值。
整转浮
公开化「整数」而化「整数」而「有」
文言:整数转浮点之二门:有符号、无符号。汉语:整数转浮点的两个入口:整转浮 按有符号 64 位解释,无符号整转浮 按无符号 64 位解释。
无符号整转浮
公开化「整数」而化「整数」而「有」
暂无说明。
饱和整
公开化「整数」而化「整数」而「有」
暂无说明。
浮转整
公开化「整数」而化「整数」而「有」
暂无说明。
大修长
公开化「整数」而化「整数」而「整数」
文言:大整数:诸肢三十二位,低者在前,置于内存;供小数之转文与析文用。汉语:大整数(小端 32 位肢数组,函数参数为 数组地址 与 肢数 长):置值、修剪长度、乘小数、左右移位、加 2 的幂、除小数(余数存 浮格_余)、转十进制串。返回新长度的函数不改变调用者手里的长度,须用返回值。
大置
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大乘小
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大左移
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大右移
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大加位
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大除小
公开化「整数」而化「整数」而化「整数」而「整数」
文言:大整数除以小数:商存原处,余存 浮格_余,返新长。汉语:大整数除以 32 位无符号小数(非零):商就地写回,余数写入 浮格_余,返回去掉高位零肢后的新长度。从高肢到低肢逐肢做 64 除 32。
十进位数
公开化「整数」而「整数」
文言:大整数转十进制:九位一组反复除,写入出址,返字节数。汉语:大整数转十进制串(无前导零;零输出“0”):反复除以 10^9 得各组余数(存入 大数丁),最高组不补零,其余各组补足 9 位;输出到 出址,返回字节数。会破坏 数 里的值。
写数位们
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
取各组
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
写各组
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大转十进制
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
写常串
公开化「整数」而化「整数」而「整数」
文言:小数转文(定点六位,同 JS 之 toFixed(6)):以整数运算精确得 ⌊值×10^6+½⌋,再依十进制书之。汉语:小数转字符串(定点六位,遇平局取绝对值大者,与 JS 的 toFixed(6) 一致):值 = 尾数 M(53 位整数)× 2^E;E ≥ 0 时 N = M×10^6×2^E,E < 0(k = -E)时 N = ⌊(M×10^6 + 2^(k-1)) / 2^k⌋,皆用大整数精确计算;N 的十进制数字最后六位为小数部分,其前为整数部分(至少一位 0);负数(含极小的负数)前置 -;零得 0.000000;非数得 NaN;无穷得 Infinity 或 -Infinity。值不小于 10^21 时仍写出全部数字(JS 会改用指数记法)。
装配定点串
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
浮有限转定点
公开化「整数」而化「整数」而「整数」
暂无说明。
浮转定点串
公开化「整数」而「整数」
暂无说明。
空白字节
公开化「整数」而「爻」
文言:文转小数:取文首之数,凡不合者止;十进制转二进制,常者一次舍入而得。汉语:字符串转小数(strtod 的子集):跳过前导空白,可选正负号,整数与小数位,可选 e/E 指数;无可转换内容得零。把十进制数字累加进 64 位整数 D(至多 19 位有效数字,多出的丢弃并记是否非零),十进制指数 E10 = 指数 - 小数点后位数 + 丢弃位数。转换:D 为零得零;D 小于 2^53、无非零丢弃且 |E10| ≤ 22 时,D 与 10^|E10| 都可精确表示,一次乘或除即得正确舍入的结果(快路径);其余情形用大整数精确计算(慢路径)。
十进数字
公开化「整数」而「爻」
暂无说明。
字节取
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
析跳空白
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大加小
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
累加大数
公开化「整数」而「有」
暂无说明。
累加数字
公开化「整数」而化「整数」而「有」
暂无说明。
析数字们
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
析指数值
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
析指数
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
浮十幂
公开化「整数」而化「整数」而「有」
暂无说明。
十进制快转
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
大位长
公开化「整数」而化「整数」而「整数」
文言:大整数之比、减、位长、窗与粘位,供十进制转二进制之精确计算。汉语:大整数辅助:位长(含最高位的位数)、比较、就地相减(甲 ≥ 乙)、取 64 位窗(从某位起的 64 位)与低位是否非零(粘位);十进制慢路径用它们精确计算 D×10^E 的舍入。
大比较
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大减
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大取窗
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
大低位非零
公开化「整数」而化「整数」而化「整数」而「爻」
暂无说明。
取十幂小
公开化「整数」而「整数」
暂无说明。
大乘十幂
公开化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大取高窗
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大转浮
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
大十幂
公开化「整数」而化「整数」而「整数」
暂无说明。
设商位
公开化「整数」而化「整数」而「有」
暂无说明。
试减
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
大试商们
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「整数」
暂无说明。
除法慢转
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
十进制近似转
公开化「整数」而化「整数」而化「整数」而「有」
文言:极端者之近似:数字太多而指数极负,大整数装不下,则以首十九位与十之幂近似。汉语:近似转换(仅用于位数很多且指数极负、大整数容纳不下的极端输入):把累积的前 19 位有效数字 D 化成双精度,再乘或除以 10 的幂(幂用平方法求,分两次除以避免中途上溢),误差可达几个末位。
十进制慢转
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
十进制转浮
公开化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
小写字节
公开化「整数」而「整数」
暂无说明。
析特殊
公开化「整数」而化「整数」而化「整数」而化「整数」而化「整数」而「有」
暂无说明。
析浮点
公开化「整数」而化「整数」而化「整数」而「有」
暂无说明。
大除十幂
公开化「整数」而化「整数」而化「整数」而「整数」
文言:小数之精确表示,同 C 之 %.17g:取十七位有效数字,平局则进(同 JS 之 toExponential 与 toFixed,亦同 Node 宿主)。值 = 尾数 M × 2^二指;求十指 X 使 10^16 ≤ N < 10^17,N 为 值×10^(16−X) 之就近整数,皆以大整数精算。汉语:小数的精确表示(与 C 的 %.17g 相同,平局时向绝对值大者进位,与 JS 的 toExponential/toFixed 及 Node 宿主一致):值 = 53 位尾数 M × 2^二指;找十进制指数 X,使 N = round(值 × 10^(16−X)) 落在 [10^16, 10^17),全部用大整数精确计算。X < −4 或 X ≥ 17 时写成指数形式(d.ddd…e±XX,指数至少两位),否则写成定点形式;都去掉小数末尾的零。零写 0 或 -0,非数写 nan,无穷写 inf 或 -inf。
精算
公开化「整数」而化「整数」而「整数」
文言:以十幂 幂 求 N 于 大数甲,返其长。幂非负者,M×10^幂 再移二指(右移者先加半);幂为负者(值必为整数),M×2^二指 除以 10^(−幂−1),末位余数不小于五则进一。汉语:按十进制幂 幂 计算 N = round(M × 2^二指 × 10^幂)(平局进位),结果放在 大数甲,返回肢数。幂 ≥ 0:先乘 10^幂,二指 ≥ 0 则左移,否则加上 2^(k−1) 再右移 k 位(k = −二指)。幂 < 0(此时值不小于 10^17,必是整数):先左移 二指,逐段整除 10^(−幂−1),再除以 10,余数 ≥ 5 则加一。
精定幂
公开化「整数」而化「整数」而「整数」
文言:定十指:N 不小于 10^17 则十指加一,小于 10^16 则减一,至合而止。汉语:确定十进制指数:从估计值出发,N ≥ 10^17 就把 X 加一,N < 10^16 就把 X 减一,直到 N 落在 [10^16, 10^17)(至多调整两三次,不会来回摆动)。
精有效位
公开化「整数」而化「整数」而「整数」
文言:去十七位数字末尾之零,返有效之位数(至少一)。汉语:去掉 17 位数字末尾的零,返回剩下的有效位数(至少 1)。
装配指数串
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
文言:书指数形式:d.ddd 后接 e、正负号、至少两位之指数。汉语:写指数形式:首位数字,有效位多于一位时接小数点与其余数字,再接 e、正负号与至少两位的指数;返回写后的位置。
装配精定串
公开化「整数」而化「整数」而化「整数」而化「整数」而「整数」
文言:书定点形式:十指非负者,整数部分为前 X+1 位;十指为负者,先书 0. 与 −X−1 个零。汉语:写定点形式:X ≥ 0 时前 X+1 位是整数部分,其余有效位跟在小数点后;X < 0 时先写“0.”和 −X−1 个零,再写有效位;返回写后的位置。
浮有限转精确
公开化「整数」而化「整数」而「整数」
暂无说明。
浮转精确串
公开化「整数」而「整数」
暂无说明。