# 工具

## 在线工具

下面是我常用的一些在线工具：

别人编写的：

1. [CyberChef](<https://gchq.github.io/CyberChef/>)：编码、加密、数据处理瑞士军刀
2. [Compiler Explorer / godbolt](<https://godbolt.org/>)：在线看汇编
3. [Hex Packet Decoder](<https://hpd.gasmi.net/>)：网络报文解析
4. [tcpdump101](<https://tcpdump101.com/>)：tcpdump 命令生成器
5. [Regexper](<https://regexper.com/>)：正则表达式可视化
6. [crontab.guru](<https://crontab.guru/>)：crontab 表达式解释
7. [Visual](<https://salmanarif.bitbucket.io/visual/index.html>)：ARM 处理器可视化模拟器
8. [Mathpix](<https://mathpix.com/>)：公式 OCR
9. [Falstad Circuit Simulator](<https://www.falstad.com/circuit/circuitjs.html>)：在线电路仿真
10. [QRazyBox](<https://merricx.github.io/qrazybox/>)：二维码分析与恢复
11. [Epoch Converter](<https://www.epochconverter.com/>)：Unix 时间戳转换
12. [Vultr MAC Converter](<https://www.vultr.com/resources/mac-converter/>)：MAC 地址转换
13. [CRC Calculator](<http://www.sunshine2k.de/coding/javascript/crc/crc_js.html>)：CRC 计算
14. [Easy Unit Converter](<https://www.easyunitconverter.com/>)：单位换算
15. [Float to Hex](<https://gregstoll.com/~gregstoll/floattohex/>)：IEEE 754 浮点与十六进制互转

自己编写的：

1. [S-DES 可视化](<https://jia.je/sdes-visualization/>)
2. [Booth 乘法可视化](<https://jia.je/booth-visualization/>)
3. [整数除法可视化](<https://jia.je/integer-divide-visualization/>)
4. [在线运行 TAC 代码](<https://jia.je/online_tac_vm/>)
5. [在线编译 Decaf](<https://jia.je/online_decaf/>)
6. [在线解码登机牌信息 BCBP](<https://jia.je/decode-bcbp/>)
7. [IEEE 754 等浮点格式转换](<https://jia.je/floating/>)
8. [显示器色彩测试](<https://jia.je/display-color-test.html>)

## 调试工具

1. CPU 上的调试器：GDB LLDB
2. 编译器自带：AddressSanitizer, ThreadSanitizer, MemorySanitizer, UndefinedBehaviorSanitizer
3. Valgrind 系列：valgrind, memcheck, cachegrind, callgrind, helgrind, drd, massif, dhat, lackey, nulgrind, bbv
4. MPI Tracing: [Pilgrim: Logger for MPI communication](<https://github.com/pmodels/pilgrim>)
5. GPU Race Detection: [iGUARD: In-GPU Advanced Race Detection](<https://github.com/csl-iisc/iGUARD>)
6. NUMA Profiling: [NumaPerf: Predictive NUMA Profiling](<https://github.com/UTSASRG/NumaPerf>)
7. OpenMP Race Detection: [archer: a data race detection tool for large OpenMP applications](<https://github.com/PRUNERS/archer>)
8. Python Profiling: cProfile, [Guppy3: A Python Programming Environment &amp; Heap analysis toolset](<https://github.com/zhuyifei1999/guppy3/>), [PyInstrument: Call stack profiler for Python](<https://github.com/joerick/pyinstrument>), [Austin: Python frame stack sampler for CPython](<https://github.com/P403n1x87/austin>), [py-spy: Sampling profiler for Python programs](<https://github.com/benfred/py-spy>), [Scalene: a high-performance, high-precision CPU, GPU, and memory profiler for Python](<https://github.com/plasma-umass/scalene>)
