问题标签 [code-size]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
224 浏览

binaryfiles - 删除部分后如何删除 ELF 部分之间无用的空白空间?

我尝试通过选项减小二进制objcopy大小--remove-section。删除节后,在删除节的原始位置会保留一些空白空间。有没有办法调整部分的偏移量以避免这些空白?

对于 emxaple,我删除了.eh_frame_hdr部分,并且在剥离的二进制文件中从 0x0764 开始有 0x03c 空白空间。

剥离后:

0 投票
1 回答
108 浏览

arduino - 如何缩小使用 DHT11 进行 AVR 的代码(Attiny45)

我正在尝试基于 DHT11 构建一个小型湿度计,但代码大小有点“问题”。我想在 Attiny45 上运行它,但它有点太大(352 字节太大而不能准确)。我知道我可以只使用 Attiny85 并且有空余空间,或者不使用引导加载程序并且几乎不适合它(94%),但我有点想让我的生活变得比它需要的更艰难,并弄清楚如何减小尺寸,因为它将来可能会派上用场。如果您愿意,请将其视为学习经验。

它应该做什么:

  • 读取 DHT11 输入
  • 在 2 个两位数的 7 段显示器上显示结果(所以我猜总共有 4 个 7 段)
  • 大部分时间进入睡眠状态以节省电量
  • 每 8 秒唤醒一次以更新传感器值(无需打开显示屏)
  • 按下按钮唤醒以显示湿度和温度值

旁注:7 段通过两个 74HC595 进行寻址,其中我使用 7 个输出用于显示器,每个用于将相关显示器连接到 GND 的晶体管。如果你有兴趣,底部有一个示意图。

正如所指出的,我的主要问题是代码大小,所以如果有人对如何减少代码大小有任何提示(或任何其他提示如何改进代码),请告诉我。

我希望我能正确地问这个问题,如果不是,请告诉我。


编译器输出:


代码:


DHT11湿度计原理图

0 投票
1 回答
99 浏览

assembly - 有没有办法在 AArch64 程序集中缩短这个机器代码 Hello World ?

我正在为 Linux 编写“Hello World”程序的编译 AArch64 程序集文件。

我已经成功地将它从 504 字节缩短到 124 字节。我能想到的唯一更“优化”的是找到一些在单个指令中执行两个或多个任务的指令。

目前文件中的机器代码(以 asm 表示)是这样的:

有什么指令可以缩短这里的内容吗?

0 投票
0 回答
47 浏览

c - 函数大小,包括其他部分中的静态数据

有没有一种方便的方法可以找到编译函数的全尺寸成本?测量函数代码大小很简单(使用objdumpor nm),但是如果函数在非文本部分生成静态数据(例如 es.jump 表)怎么办switch?如何方便地将它们的大小添加到函数的文本大小中(尤其是在每个目标文件有多个函数并且其中几个函数都引用一个跳转表的情况下)?