网页汇编核心/回收模块。豫
yuyan · 453 行 · 25494 字节 · UTF-8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453
寻观「标准库」之书。
寻观「标准库」之「数据结构」之「字节串」之书。
「:
文言:回收网页汇编之模块,以豫言之数据书之,编译器直构之而编为二进制,不经文本。类型、函数、局部、全局、标号皆以名记,编码时乃解为序号;模块诸项依书写之序,编码之规同标准文本汇编器。
汉语:WasmGC 模块的结构化表示:编译器直接构造它,再编码为二进制,不经过 WAT 文本。类型、函数、局部变量、全局变量、标号都用名字引用,编码时再解析为索引;模块项保持书写顺序,编码规则(隐式类型的追加、局部变量的分组等)与标准 WAT 汇编器一致。
:」
「:文言:堆型:抽象者与具名者。汉语:堆类型:抽象堆类型,或按名字引用的具体类型。:」
「回收堆型」立「元类型」也。
「回收堆等」立「回收堆型」也。
「回收堆任」立「回收堆型」也。
「回收堆小整」立「回收堆型」也。
「回收堆结构」立「回收堆型」也。
「回收堆数组」立「回收堆型」也。
「回收堆函数」立「回收堆型」也。
「回收堆外部」立「回收堆型」也。
「回收堆空」立「回收堆型」也。
「回收堆名」立化「字符串」而「回收堆型」也。
「:文言:值型;引用之型记其可空与堆型。汉语:值类型;引用类型记录是否可空与堆类型。:」
「回收值型」立「元类型」也。
「回收整三二」立「回收值型」也。
「回收整六四」立「回收值型」也。
「回收浮三二」立「回收值型」也。
「回收浮六四」立「回收值型」也。
「回收向量型」立「回收值型」也。
「回收引用」立化「爻」而化「回收堆型」而「回收值型」也。
「:文言:存型:值型,或八位、十六位之紧存。汉语:字段存储类型:值类型,或 i8、i16 紧凑存储。:」
「回收存型」立「元类型」也。
「回收存值」立化「回收值型」而「回收存型」也。
「回收存八」立「回收存型」也。
「回收存十六」立「回收存型」也。
「:文言:字段记其可变与存型。汉语:字段:是否可变、存储类型。:」
「回收字段」即「爻」
合「回收存型」
也。
「:文言:复合之型:函数、结构、数组。汉语:复合类型:函数类型(参数与结果)、结构体、数组。:」
「回收复合型」立「元类型」也。
「回收函数型」立化(「列」于「回收值型」)而化(「列」于「回收值型」)而「回收复合型」也。
「回收结构型」立化(「列」于「回收字段」)而「回收复合型」也。
「回收数组型」立化「回收字段」而「回收复合型」也。
「:文言:用型:按名引之,或内书参与果;内书而无同型者,编码时追加隐式之型。汉语:类型用法:按名字引用,或内联写出参数与结果;内联且没有相同的显式函数类型时,编码时在类型段末尾追加隐式类型。:」
「回收型用」立「元类型」也。
「回收型名用」立化「字符串」而「回收型用」也。
「回收型内联」立化(「列」于「回收值型」)而化(「列」于「回收值型」)而「回收型用」也。
「回收块型」立「元类型」也。
「回收块无果」立「回收块型」也。
「回收块单果」立化「回收值型」而「回收块型」也。
「回收块多果」立化(「列」于「回收值型」)而「回收块型」也。
「:文言:标号以名,或以深度。汉语:跳转目标:按标号名字,或直接给出深度。:」
「回收标号」立「元类型」也。
「回收名标」立化「字符串」而「回收标号」也。
「回收深标」立化「整数」而「回收标号」也。
「回收捕获」立「元类型」也。
「回收捕标签」立化「字符串」而化「回收标号」而「回收捕获」也。
「回收捕标签引用」立化「字符串」而化「回收标号」而「回收捕获」也。
「回收捕全部」立化「回收标号」而「回收捕获」也。
「回收捕全部引用」立化「回收标号」而「回收捕获」也。
「:文言:内存之参:对齐(以二为底之指数)与偏移。汉语:内存参数:对齐(以 2 为底的指数)与偏移。:」
「回收内存参」即「整数」
合「整数」
也。
「:
文言:指令。无立即数之单字节操作以其码记之(数值运算、弃、空操作、不可达、返回、否则、结束、选择、引用相等等);前缀 0xFB、0xFD 之无立即数者亦以子码记之;前缀 0xFC 之杂令记其子码与诸无符号立即数;余者各立其形。名皆符号,编码时解之。
汉语:指令。没有立即数的单字节操作直接记操作码(数值运算、drop、nop、unreachable、return、else、end、select、ref.eq 等);0xFB(GC)与 0xFD(SIMD)前缀下没有立即数的操作记子操作码;0xFC 前缀的杂项指令(如 memory.fill)记子操作码与若干无符号立即数;其余指令各有构造器。名字都是符号,编码时解析。
:」
「回收指令」立「元类型」也。
「回收单码」立化「整数」而「回收指令」也。
「回收回收码」立化「整数」而「回收指令」也。
「回收向量码」立化「整数」而「回收指令」也。
「回收向量车道」立化「整数」而化「整数」而「回收指令」也。
「回收向量常」立化「字节串」而「回收指令」也。
「回收杂码」立化「整数」而化(「列」于「整数」)而「回收指令」也。
「回收块」立化「字符串」而化「回收块型」而「回收指令」也。
「回收循环」立化「字符串」而化「回收块型」而「回收指令」也。
「回收若」立化「字符串」而化「回收块型」而「回收指令」也。
「回收试表」立化「字符串」而化「回收块型」而化(「列」于「回收捕获」)而「回收指令」也。
「回收跳」立化「回收标号」而「回收指令」也。
「回收条件跳」立化「回收标号」而「回收指令」也。
「回收表跳」立化(「列」于「回收标号」)而化「回收标号」而「回收指令」也。
「回收调用」立化「字符串」而「回收指令」也。
「回收尾调用」立化「字符串」而「回收指令」也。
「回收间接调用」立化「字符串」而化「字符串」而「回收指令」也。
「回收尾间接调用」立化「字符串」而化「字符串」而「回收指令」也。
「回收引用调用」立化「字符串」而「回收指令」也。
「回收尾引用调用」立化「字符串」而「回收指令」也。
「回收抛」立化「字符串」而「回收指令」也。
「回收局部取」立化「字符串」而「回收指令」也。
「回收局部存」立化「字符串」而「回收指令」也。
「回收局部暂存」立化「字符串」而「回收指令」也。
「回收全局取」立化「字符串」而「回收指令」也。
「回收全局存」立化「字符串」而「回收指令」也。
「回收整三二常」立化「整数」而「回收指令」也。
「回收整六四常」立化「整数」而「回收指令」也。
「回收浮六四常」立化「字符串」而化「字符串」而「回收指令」也。
「回收内存码」立化「整数」而化「回收内存参」而「回收指令」也。
「回收向量内存码」立化「整数」而化「回收内存参」而「回收指令」也。
「回收引用空」立化「回收堆型」而「回收指令」也。
「回收引用函数」立化「字符串」而「回收指令」也。
「回收引用测」立化「爻」而化「回收堆型」而「回收指令」也。
「回收引用转」立化「爻」而化「回收堆型」而「回收指令」也。
「回收结构新」立化「字符串」而「回收指令」也。
「回收结构新默认」立化「字符串」而「回收指令」也。
「回收结构取」立化「字符串」而化「整数」而「回收指令」也。
「回收结构存」立化「字符串」而化「整数」而「回收指令」也。
「回收数组新」立化「字符串」而「回收指令」也。
「回收数组新默认」立化「字符串」而「回收指令」也。
「回收数组新定」立化「字符串」而化「整数」而「回收指令」也。
「回收数组新数据」立化「字符串」而化「字符串」而「回收指令」也。
「回收数组取」立化「字符串」而「回收指令」也。
「回收数组取有」立化「字符串」而「回收指令」也。
「回收数组取无」立化「字符串」而「回收指令」也。
「回收数组存」立化「字符串」而「回收指令」也。
「回收数组填」立化「字符串」而「回收指令」也。
「回收数组复制」立化「字符串」而化「字符串」而「回收指令」也。
「:文言:内存之大小与增长,皆施于零号内存。汉语:memory.size 与 memory.grow,作用于零号内存。:」
「回收内存大小」立「回收指令」也。
「回收内存增长」立「回收指令」也。
「:文言:指令之串为绳,合之常数之功,编码时乃展平。汉语:指令序列用“绳”表示:拼接只需常数时间,编码时一次展平,避免反复复制长列表。:」
「回收串」立「元类型」也。
「回收空串」立「回收串」也。
「回收单令」立化「回收指令」而「回收串」也。
「回收令列」立化(「列」于「回收指令」)而「回收串」也。
「回收串并」立化(「列」于「回收串」)而「回收串」也。
「回收局部」即「字符串」
合「回收值型」
也。
「回收导出种」立「元类型」也。
「回收出函数」立「回收导出种」也。
「回收出表」立「回收导出种」也。
「回收出内存」立「回收导出种」也。
「回收出全局」立「回收导出种」也。
「回收出标签」立「回收导出种」也。
「:
文言:模块之项,依书写之序。函数项记名、用型、诸参之名、局部与指令;表为函数引用之表;元素段主动而入某表;数据段或被动,或主动而入某内存。
汉语:模块项,按书写顺序排列。函数项记录名字、类型用法、各参数名、局部变量与指令;表是 funcref 表;元素段为主动段,写入指定的表;数据段为被动段,或写入指定内存的主动段。
:」
「回收模块项」立「元类型」也。
「回收类型项」立化「字符串」而化「回收复合型」而「回收模块项」也。
「回收导入函数项」立化「字符串」而化「字符串」而化「字符串」而化「回收型用」而「回收模块项」也。
「回收函数项」立
化「字符串」而
化「回收型用」而
化(「列」于「字符串」)而
化(「列」于「回收局部」)而
化「回收串」而
「回收模块项」
也。
「回收表项」立化「字符串」而化「整数」而「回收模块项」也。
「回收内存项」立化「字符串」而化「整数」而化(「或可有」于「整数」)而「回收模块项」也。
「回收全局项」立化「字符串」而化「回收值型」而化「爻」而化「回收串」而「回收模块项」也。
「回收导出项」立化「字符串」而化「回收导出种」而化「字符串」而「回收模块项」也。
「回收起始项」立化「字符串」而「回收模块项」也。
「回收元素项」立化「字符串」而化「回收串」而化(「列」于「字符串」)而「回收模块项」也。
「回收数据项」立化「字符串」而化「字节串」而「回收模块项」也。
「回收主动数据项」立化「字符串」而化「字符串」而化「回收串」而化「字节串」而「回收模块项」也。
「回收标签项」立化「字符串」而化「回收型用」而「回收模块项」也。
「:文言:模块项亦以绳合之。汉语:模块项序列同样用“绳”表示。:」
「回收项串」立「元类型」也。
「回收空项」立「回收项串」也。
「回收单项」立化「回收模块项」而「回收项串」也。
「回收项列」立化(「列」于「回收模块项」)而「回收项串」也。
「回收项并」立化(「列」于「回收项串」)而「回收项串」也。
「:文言:常用之型。汉语:常用类型的简写。:」
「回收等引用」者「回收引用」于「阳」于「回收堆等」也。
「回收名引用」乃化「字符串」而「回收值型」也。
「回收名引用」者会「名」而
「回收引用」于「阴」于(「回收堆名」于「名」)
也。
「回收可空名引用」乃化「字符串」而「回收值型」也。
「回收可空名引用」者会「名」而
「回收引用」于「阳」于(「回收堆名」于「名」)
也。
「:文言:展平指令之绳,保其先后。汉语:把指令绳展平为列表,保持先后顺序;先逆序累积再反转,总成本线性。:」
「回收展平」乃化「回收串」而(「列」于「回收指令」)也。
「回收展平」者会「串」而
递归虑「逆积」其化「回收串」而化(「列」于「回收指令」)而(「列」于「回收指令」)者会「当前」而
会「逆」而
鉴「当前」而
有「回收空串」则「逆」
或有(「回收单令」于「令」)则(「缀」于「令」于「逆」)
或有(「回收令列」于「诸令」)则
「从左折叠」授以「回收指令」授以(「列」于「回收指令」)
于(会「令」而会「已有」而「缀」于「令」于「已有」)
于「逆」
于「诸令」
或有(「回收串并」于「诸串」)则
「从左折叠」授以「回收串」授以(「列」于「回收指令」)
于(会「子」而会「已有」而「逆积」于「子」于「已有」)
于「逆」
于「诸串」
而
「反转」于(「逆积」于「串」于(「罄」授以「回收指令」))
也。
「回收项展平」乃化「回收项串」而(「列」于「回收模块项」)也。
「回收项展平」者会「串」而
递归虑「逆积」其化「回收项串」而化(「列」于「回收模块项」)而(「列」于「回收模块项」)者会「当前」而
会「逆」而
鉴「当前」而
有「回收空项」则「逆」
或有(「回收单项」于「项」)则(「缀」于「项」于「逆」)
或有(「回收项列」于「诸项」)则
「从左折叠」授以「回收模块项」授以(「列」于「回收模块项」)
于(会「项」而会「已有」而「缀」于「项」于「已有」)
于「逆」
于「诸项」
或有(「回收项并」于「诸串」)则
「从左折叠」授以「回收项串」授以(「列」于「回收模块项」)
于(会「子」而会「已有」而「逆积」于「子」于「已有」)
于「逆」
于「诸串」
而
「反转」于(「逆积」于「串」于(「罄」授以「回收模块项」))
也。
「:文言:常用之令,以名代码。汉语:常用指令的具名常量,免得在生成代码里直接写操作码。:」
「回收不可达」者「回收单码」于「零」也。
「回收空操作」者「回收单码」于「一」也。
「回收否则」者「回收单码」于「五」也。
「回收结束」者「回收单码」于「一一」也。
「回收返回」者「回收单码」于「一五」也。
「回收弃」者「回收单码」于「二六」也。
「回收选择」者「回收单码」于「二七」也。
「回收整三二为零」者「回收单码」于「六九」也。
「回收整三二相等」者「回收单码」于「七零」也。
「回收整三二不等」者「回收单码」于「七一」也。
「回收整三二有符号小于」者「回收单码」于「七二」也。
「回收整三二无符号小于」者「回收单码」于「七三」也。
「回收整三二有符号大于」者「回收单码」于「七四」也。
「回收整三二无符号大于」者「回收单码」于「七五」也。
「回收整三二有符号小等」者「回收单码」于「七六」也。
「回收整三二无符号小等」者「回收单码」于「七七」也。
「回收整三二有符号大等」者「回收单码」于「七八」也。
「回收整三二无符号大等」者「回收单码」于「七九」也。
「回收整六四为零」者「回收单码」于「八零」也。
「回收整六四相等」者「回收单码」于「八一」也。
「回收整六四不等」者「回收单码」于「八二」也。
「回收整六四有符号小于」者「回收单码」于「八三」也。
「回收整六四无符号小于」者「回收单码」于「八四」也。
「回收整六四有符号大于」者「回收单码」于「八五」也。
「回收整六四无符号大于」者「回收单码」于「八六」也。
「回收整六四有符号小等」者「回收单码」于「八七」也。
「回收整六四无符号小等」者「回收单码」于「八八」也。
「回收整六四有符号大等」者「回收单码」于「八九」也。
「回收整六四无符号大等」者「回收单码」于「九零」也。
「回收整三二加」者「回收单码」于「一零六」也。
「回收整三二减」者「回收单码」于「一零七」也。
「回收整三二乘」者「回收单码」于「一零八」也。
「回收整三二有符号除」者「回收单码」于「一零九」也。
「回收整三二无符号除」者「回收单码」于「一一零」也。
「回收整三二有符号余」者「回收单码」于「一一一」也。
「回收整三二无符号余」者「回收单码」于「一一二」也。
「回收整三二与」者「回收单码」于「一一三」也。
「回收整三二或」者「回收单码」于「一一四」也。
「回收整三二异或」者「回收单码」于「一一五」也。
「回收整三二左移」者「回收单码」于「一一六」也。
「回收整三二有符号右移」者「回收单码」于「一一七」也。
「回收整三二无符号右移」者「回收单码」于「一一八」也。
「回收整六四加」者「回收单码」于「一二四」也。
「回收整六四减」者「回收单码」于「一二五」也。
「回收整六四乘」者「回收单码」于「一二六」也。
「回收整六四有符号除」者「回收单码」于「一二七」也。
「回收整六四无符号除」者「回收单码」于「一二八」也。
「回收整六四有符号余」者「回收单码」于「一二九」也。
「回收整六四无符号余」者「回收单码」于「一三零」也。
「回收整六四与」者「回收单码」于「一三一」也。
「回收整六四或」者「回收单码」于「一三二」也。
「回收整六四异或」者「回收单码」于「一三三」也。
「回收整六四左移」者「回收单码」于「一三四」也。
「回收整六四有符号右移」者「回收单码」于「一三五」也。
「回收整六四无符号右移」者「回收单码」于「一三六」也。
「回收整六四截三二」者「回收单码」于「一六七」也。
「回收整三二有符号扩六四」者「回收单码」于「一七二」也。
「回收整三二无符号扩六四」者「回收单码」于「一七三」也。
「回收引用为空」者「回收单码」于「二零九」也。
「回收引用相等」者「回收单码」于「二一一」也。
「回收数组长」者「回收回收码」于「一五」也。
「回收转小整」者「回收回收码」于「二八」也。
「回收小整取有符号」者「回收回收码」于「二九」也。
「回收小整取无符号」者「回收回收码」于「三零」也。
「回收整六四双铺」者「回收向量码」于「一八」也。
「回收整六四双加」者「回收向量码」于「二零六」也。
「回收整六四双减」者「回收向量码」于「二零九」也。
「:文言:内存之取存,依自然对齐。汉语:内存读写指令,按自然对齐(i32 为 2,i64 为 3,v128 为 4)。:」
「回收整三二读」乃化「整数」而「回收指令」也。
「回收整三二读」者会「偏移」而
「回收内存码」于「四零」于(「二」与「偏移」)
也。
「回收整六四读」乃化「整数」而「回收指令」也。
「回收整六四读」者会「偏移」而
「回收内存码」于「四一」于(「三」与「偏移」)
也。
「回收整三二存」乃化「整数」而「回收指令」也。
「回收整三二存」者会「偏移」而
「回收内存码」于「五四」于(「二」与「偏移」)
也。
「回收整六四存」乃化「整数」而「回收指令」也。
「回收整六四存」者会「偏移」而
「回收内存码」于「五五」于(「三」与「偏移」)
也。
「:文言:八位之取存:取者补零,存者截低。汉语:8 位读写:i32.load8_u 读入一个字节并零扩展,i32.store8 存入低 8 位;对齐为 1 字节。:」
「回收整三二读八无」乃化「整数」而「回收指令」也。
「回收整三二读八无」者会「偏移」而
「回收内存码」于「四五」于(「零」与「偏移」)
也。
「回收整三二存八」乃化「整数」而「回收指令」也。
「回收整三二存八」者会「偏移」而
「回收内存码」于「五八」于(「零」与「偏移」)
也。
「回收向量读」乃化「整数」而「回收指令」也。
「回收向量读」者会「偏移」而
「回收向量内存码」于「零」于(「四」与「偏移」)
也。
「回收向量存」乃化「整数」而「回收指令」也。
「回收向量存」者会「偏移」而
「回收向量内存码」于「一一」于(「四」与「偏移」)
也。
「回收整六四双取道」乃化「整数」而「回收指令」也。
「回收整六四双取道」者会「道」而
「回收向量车道」于「二九」于「道」
也。
「回收整六四双换道」乃化「整数」而「回收指令」也。
「回收整六四双换道」者会「道」而
「回收向量车道」于「三零」于「道」
也。
「:文言:以一值填内存之一段(零号内存)。汉语:memory.fill:用一个字节值填充零号内存中的一段。:」
「回收内存填」者「回收杂码」于「一一」于(「列」【「零」】)也。
「:文言:六十四位之数,依补码书为小端八字节;负者先加二之六十三次方使非负,末字节乃加一百二十八。汉语:把 i64 整数按补码写成小端 8 字节;负数先加 2^63 化为非负,再给最高字节加 0x80。:」
「回收整六四八字节」乃化「整数」而「字节串」也。
「回收整六四八字节」者会「数」而
虑「负」者「小于」于「数」于「零」而
虑「底」者
若「负」则「减」于「数」于(「减」于(「减」于「零」于「九二二三三七二零三六八五四七七五八零七」)于「一」)否则
「数」
而
递归虑「逐」其化「整数」而化「整数」而「字节串」者会「余」而
会「次」而
若「等于」于「次」于「八」则
「空字节串」于「元」
否则
虑「商」者「除以」于「余」于「二五六」而
虑「低」者「减」于「余」于(「乘」于「商」于「二五六」)而
虑「字」者
若「且」于「负」于(「等于」于「次」于「七」)则「加」于「低」于「一二八」否则「低」
而
「拼接字节串」于(「单字节串」于「字」)于(「逐」于「商」于(「加」于「次」于「一」))
而
「逐」于「底」于「零」
也。
「:文言:六十四位双道之常:先甲道,后乙道。汉语:v128.const i64x2 甲 乙:由两个 i64 车道组成的向量常量,甲为第 0 道。:」
「回收整六四双常」乃化「整数」而化「整数」而「回收指令」也。
「回收整六四双常」者会「甲」而会「乙」而
「回收向量常」于(「拼接字节串」于(「回收整六四八字节」于「甲」)于(「回收整六四八字节」于「乙」))
也。