这是 srec_input 命令,可以使用我们的多个免费在线工作站之一在 OnWorks 免费托管服务提供商中运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
srec_input - 输入文件规范
概要
srec_* 文件名 [ 格式 ]
商品描述
本手册页描述了输入文件规范 srec_cat(1) srec_cmp(1)
和 srec_信息(1) 命令。
输入文件可以通过多种方式进行限定:您可以指定它们的格式,您可以
指定要应用于它们的过滤器。 输入文件规范如下所示:
文件名 [ 格式 ][ -忽略校验和 ][ 过滤 ...]
- 文件名 可以指定为文件名,或者可以理解的特殊名称“-”
表示标准输入。
分组 - 括弧
在某些情况下,过滤器的运算符优先级可能不明确。 输入
规格也可以附在 ( 括弧 ) 使分组明确。
请记住,括号必须是单独的词, 如 被空间包围,他们
将需要引用以使它们通过 shell 对括号的解释。
那些 附加选项 名称 当然 是 长
所有选项都可以缩写; 缩写记录为大写字母,
所有小写字母和下划线 (_) 都是可选的。 您必须使用连续
可选字母的序列。
所有选项都不区分大小写,您可以将它们输入为大写或小写或
两者结合,大小写并不重要。
例如:参数“-help”、“-HEL”和“-h”都被解释为表示 -帮助
选项。 参数“-hlp”不会被理解,因为连续可选
未提供字符。
选项和其他命令行参数可以在命令行上任意混合。
GNU 长选项名称是可以理解的。 由于所有选项名称为 srec_输入 很长,
这意味着忽略额外的前导“-”。 这 ”--选项=折扣值”约定也是
明白了。
文件 格式
- 格式 由参数指定 after 文件名。 格式默认为
如果未指定,摩托罗拉 S-Record。 格式说明符是:
-绝对对象模块格式
此选项表示使用英特尔绝对对象模块格式 (AOMF) 来读取
文件。 (看 srec_aomf(5) 有关此文件格式的说明。)
-Ascii_Hex
此选项表示使用 Ascii-Hex 格式读取文件。 看
srec_ascii_hex(5) 有关此文件格式的说明。
-Atmel_Generic
此选项表示使用 Atmel 通用格式读取文件。 看
srec_atmel_遗传(5) 有关此文件格式的说明。
-二进制 此选项表示该文件是原始二进制文件,应按字面意思阅读。
(这个选项也可以写成 -Raw。)见 srec_二进制文件(5) 了解更多信息。
-B-记录
此选项表示使用 Freescale MC68EZ328 Dragonball bootstrap b-record
格式来读取文件。 看 srec_b记录(5) 对这个文件的描述
格式。
-COSMAC 此选项表示使用 RCA Cosmac Elf 格式读取文件。 看
srec_cosmac(5) 有关此文件格式的说明。
-Dec_Binary
此选项表示使用 DEC 二进制 (XXDP) 格式读取文件。 看
srec_dec_binary(5) 有关此文件格式的说明。
-Elektor_Monitor52
此选项表示使用 EMON52 格式读取文件。 看 srec_emon52(5)
有关此文件格式的说明。
-飞兆
此选项表示使用 Fairchild Fairbug 格式读取文件。 看
srec_fairchild(5) 有关此文件格式的说明。
-快速加载
此选项表示使用 LSI Logic 快速加载格式来读取文件。 看
srec_fastload(5) 有关此文件格式的说明。
-Formatted_Binary
此选项表示使用格式化二进制格式来读取文件。 看
srec_formatted_binary(5) 有关此文件格式的说明。
-Four_Packed_Code
此选项表示使用 FPC 格式读取文件。 看 srec_fpc(5) 对于一个
此文件格式的说明。
-猜测 此选项可用于要求命令猜测输入格式。 这是
比指定显式格式慢,因为它可能会打开、扫描和关闭
多次归档。
-HEX_转储
此选项表示尝试读取十六进制转储文件,或多或少的风格
由相同的选项输出。 这不是一个精确的反向映射,因为如果有
是右侧的 ASCII 等价物,这些可能与数据混淆
字节。 此外,它不理解表示数据中漏洞的空格
线。
-IDT 此选项表示以 IDT/sim 二进制格式读取文件。
-英特尔 此选项表示使用 Intel 十六进制格式读取文件。 看 srec_intel(5)
有关此文件格式的说明。
-INTel_HeX_16
此选项表示使用 Intel hex 16 (INHX16) 格式读取文件。 看
srec_intel16(5) 有关此文件格式的说明。
-内存_初始化_文件
该选项表示使用 Altera 的存储器初始化文件 (MIF) 格式
读取文件。 看 srec_mif文件 (5) 有关此文件格式的说明。
-Mips_Flash_BigEndian
-Mips_Flash_LittleEndian
此选项表示使用 MIPS Flash 文件格式读取文件。 看
srec_mips_flash (5) 有关此文件格式的说明。
-MOS_技术
此选项表示使用 Mos Technologies 格式读取文件。 看
srec_mos_tech(5) 有关此文件格式的说明。
-摩托罗拉 [ 宽度 ]
此选项表示使用摩托罗拉 S-Record 格式读取文件。 (或许
书面 -S-记录 也一样。)见 srec_摩托罗拉(5) 对这个文件的描述
格式。
可选的 宽度 参数描述形成每个地址的字节数
多。 对于正常使用,一 (1) 个字节的默认值是合适的。 一些
具有 16 位或 32 位目标的系统会破坏文件中的地址; 这个
选项将对此进行纠正。 与大多数其他参数不同,这个参数不能
猜到了。
-MsBin 此选项表示使用 Windows CE 二进制图像数据格式来读取文件。
参见 srec_msbin(5) 有关此文件格式的说明。
-Needham_十六进制
此选项表示使用 Needham Electronics ASCII 文件格式来读取
文件。 看 srec_李约瑟(5) 有关此文件格式的说明。
-俄亥俄科学
此选项表示使用Ohio Scientific 格式。 看 srec_os65v(5) 对于一个
此文件格式的说明。
-PPB 此选项表示使用 Stag Prom Programmer 二进制格式。 看 srec_ppb(5)
有关此文件格式的说明。
-PPX 此选项表示使用 Stag Prom Programmer 十六进制格式。 看
srec_ppx(5) 有关此文件格式的说明。
-SIGNetics
此选项表示使用 Signetics 格式。 看 srec_痉挛(5) 说明
这种文件格式。
-痉挛症 此选项表示使用 SPASM 汇编器输出格式(PIC 常用
程序员)。 看 srec_痉挛(5) 有关此文件格式的说明。
-SPAsm_LittleEndian
此选项表示使用 SPASM 汇编器输出格式(PIC 常用
程序员)。 但数据反过来。
-斯威 此选项表示使用 Stewie 二进制格式读取文件。 看
srec_stewie(5) 有关此文件格式的说明。
-泰克
此选项表示使用泰克十六进制格式读取文件。 看
srec_tektronix公司(5) 有关此文件格式的说明。
-泰克_扩展
此选项表示使用泰克扩展十六进制格式读取文件。 看
srec_泰克_扩展(5) 有关此文件格式的说明。
-Texas_Instruments_Tagged
此选项表示使用德州仪器标记格式读取文件。 看
srec_ti_tagged(5) 有关此文件格式的说明。
-Texas_Instruments_Tagged_16
此选项表示使用德州仪器 SDSMAC 320 格式读取文件。
参见 srec_ti_tagged_16(5) 有关此文件格式的说明。
-Texas_Instruments_TeXT
此选项表示使用德州仪器 TXT (MSP430) 格式读取
文件。 看 srec_ti_txt(5) 有关此文件格式的说明。
-VMem 此选项表示使用 Verilog VMEM 格式读取文件。 看
srec_vmem(5) 有关此文件格式的说明。
-威尔逊 此选项表示使用 wilson 格式读取文件。 看 srec_威尔逊(5)
有关此文件格式的说明。
忽略 校验和
- -忽略校验和 选项可用于禁用输入文件的校验和验证,
对于那些有校验和的格式。 请注意,校验和值仍然是
读入并解析(所以如果它们丢失仍然是一个错误)但它们的值不是
检查。 在输入文件名之后使用,该选项仅影响该文件; 随处使用
否则在命令行上,它适用于所有以下文件。
发电机
也可以生成数据,而不是从文件中读取数据。 你可以使用一个
在任何可以使用文件的地方生成器。 输入生成器规范看起来像
这个:
-产生 地址范围 -数据源
- -数据源 可能是以下之一:
-持续的 字节值
此生成器使用给定的给定字节值制造数据
地址范围。 如果字节值不在 0..255 范围内,则会出错。
例如,要使用换行符 (100x199A) 填充内存地址 0..0,您可以使用
像这样的命令
srec_cat -生成 100 200 -常量 10 -o newlines.srec
当然,这可以与文件中的数据结合使用。
-REPeat_Data 字节值...
此生成器使用给定的字节值在
给定的地址范围。 如果任何字节值不在
范围 0..255。
例如,要创建一个偶数字节为 0xDE、偶数字节为 0xAD 的数据区域
奇数字节,使用这样的生成器:
srec_cat -generate 0x1000 0x2000 -repeat-data 0xDE 0xAD
重复边界与地址范围的基址对齐,以
字节数。
-REPeat_String 文本
这个生成器几乎与 -repeat-data 相同,除了要生成的数据
重复是给定字符串的文本。
例如,要填充 EPROM 映像中的孔 文件 与文字
“Copyright (C) 1812 Tchaikovsky”,结合一个生成器和一个 -exclude 过滤器,例如
作为命令
srec_cat eprom.srec \
- 生成 0 0x100000 \
-repeat-string 'Copyright (C) 1812 Tchaikovsky。 ' \
-排除 -在 eprom.srec 内 \
-o eprom.filled.srec
需要注意的是,我们有两个数据源: 文件 文件,和
在覆盖第一兆字节内存的地址范围内生成数据,但
不包括被覆盖的区域 文件 数据。
-Litte_Endian_CONSTant 折扣值 宽度
此生成器使用给定字节的给定数值制造数据
宽度,以小端字节序排列。 如果给定的值不正确,则为错误
适合给定的字节宽度。 它将在地址内一遍又一遍地重复
范围。
例如,在 4x0..0008x0B 处插入一个 subversion 提交号到 000 个字节
你会使用像这样的命令
srec_cat -generate 8 12 -l-e-constant $VERSION 4 \
-o 版本.srec
这个生成器是一个方便的包装器 -REPeat_Data 发电机。 它
当然,可以与文件中的数据结合使用。
-Big_Endian_CONSTant 折扣值 宽度
同上,但使用大端字节序。
其他任何事情都会导致错误。
输入 筛选
您可以指定零个或多个 过滤器 要施加。 过滤器按顺序应用
用户指定。
-和 折扣值
此过滤器可用于按位与 折扣值 到每个数据字节。 这是
如果您需要清除位,则很有用。 只更改现有数据,没有漏洞
填充。
-Big_Endian_Adler_16 地址
此过滤器可用于将数据的“Adler”16 位校验和插入到
数据。 在给定的地址处插入两个字节,大端顺序。 打孔
输入数据被忽略。 字节按地址升序处理 (而不去
按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Adler 校验和
如果没有洞。 这很重要,因为内存中的 EPROM 映像将
没有洞。 你几乎总是想使用 -充满 在任何之前过滤
阿德勒校验和过滤器。 如果提供的数据用于
阿德勒校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Adler-32
-Big_Endian_Adler_32 地址
此过滤器可用于将数据的 Adler 32 位校验和插入到
数据。 四个字节,大端顺序,插入给定的地址。 打孔
输入数据被忽略。 字节按地址升序处理 (而不去
按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Adler 校验和
如果没有洞。 这很重要,因为内存中的 EPROM 映像将
没有洞。 你几乎总是想使用 -充满 在任何之前过滤
阿德勒校验和过滤器。 如果提供的数据用于
阿德勒校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Adler-32
-Big_Endian_Checksum_BitNot 地址 [ 字节数 [ 宽度 ]]
此过滤器可用于将数据的补码校验和插入到
数据,最重要的字节在前。 数据按字面求和; 如果有
重复字节,这会产生错误的结果,如果有空洞,它
就好像它们被零填充一样。 如果数据已经包含字节
校验和位置,您需要使用排除过滤器,否则会生成
错误。 您需要在此过滤器之前应用和裁剪或填充过滤器。 价值
将首先写入最高有效字节。 的字节数
结果校验和默认为 4。宽度(值的字节宽度
求和)默认为 1。
-Big_Endian_Checksum_Negative 地址 [ 字节数 [ 宽度 ]]
此过滤器可用于插入二进制补码(负)校验和
数据进入数据。 其他类似上面的。
-Big_Endian_Checksum_Positive 地址 [ 字节数 [ 宽度 ]]
该过滤器可用于将数据的简单校验和插入到数据中。
其他类似上面的。
-Big_Endian_CRC16 地址 [ 变化...]
此过滤器可用于插入行业标准的 16 位 CRC 校验和
数据进入数据。 两个字节,大端顺序,插入地址
给。 输入数据中的空洞将被忽略。 字节按升序处理
地址顺序(而不去 按照它们在输入中出现的顺序)。
理解以下附加修饰符:
数 将要使用的多项式设置为给定的数字。
- 最多到最少
CRC 计算是用每个中的最高有效位执行的
先处理字节,然后处理最不重要的字节
少量。 这是默认设置。
-最少到最多
CRC 计算是用每个中的最低有效位执行的
先处理字节,然后处理最重要的
位。
-CCITT 执行 CCITT 计算。 初始种子是 0xFFFF。 这是
默认值。
-X调制解调器 执行交替的 XMODEM 计算。 初始种子是
0x0000。
-破碎的 执行一个普通但不完整的计算(见下面的注释 2)。 这
初始种子是 0x84CF。
-增加
CRC 在计算结束时增加了 XNUMX 个零位。
这是默认设置。
-无增强
CRC 在计算结束时不会增加。 这是少
符合标准,但某些实现会这样做。
请注意: 如果您的数据中有漏洞,您将获得与有漏洞的 CRC 不同的 CRC
没有洞。 这很重要,因为内存中的 EPROM 映像不会有
孔。 你几乎总是想使用 -充满 在任何CRC之前过滤
过滤器。 如果为 CRC 提供的数据存在漏洞,您将收到警告。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
备注 2: 有很多 CRC16 实现,请参阅
http://www.joegeluso.com/software/articles/ccitt.htm (现已消失,转载于
http://srecord.sourceforge.net/crc16-ccitt.html) 和“CRC 无痛指南
错误检测算法” http://www.repairfaq.org/filipg/LINK/F_crc_v3.html HPMC胶囊
更多信息。 如果一切都失败了,SRecord 是开源软件:阅读
SRecord 源代码。 CRC16 源代码(在 srecord/crc16.cc 文件中找到
分发包)有很多解释性评论。
在报告错误之前,请尝试上述选项的所有十二种组合
CRC16 计算。
-Big_Endian_CRC32 地址 [ 变化...]
此过滤器可用于插入行业标准的 32 位 CRC 校验和
数据进入数据。 四个字节,大端顺序,插入地址
给。 输入数据中的空洞将被忽略。 字节按升序处理
地址顺序(而不去 按照它们在输入中出现的顺序)。 另见注释
关于洞,上面。
理解以下附加修饰符:
-CCITT 执行 CCITT 计算。 初始种子都是一位。
这是默认设置。
-X调制解调器 执行替代的 XMODEM 样式计算。 初始种子是
所有零位。
-Big_Endian_Exclusive_Length 地址 [ 字节数 [ 宽度 ]]
与 -Big_Endian_Length 过滤器,除了结果 而不去 包括
长度本身。
-Big_Endian_Exclusive_MAXimum 地址 [ 字节数 ]
与 -Big_Endian_MAXimum 过滤器,除了结果 而不去
包括最大值本身。
-Big_Endian_Exclusive_MINimum 地址 [ 字节数 ]
与 -Big_Endian_MINimum 过滤器,除了结果 而不去
包括最小值本身。
-Big_Endian_Fletcher_16 地址 [ sum1 sum2 [ 回答 ]]
此过滤器可用于将数据的 Fletcher 16 位校验和插入到
数据。 在给定的地址处插入两个字节,大端顺序。 打孔
输入数据被忽略。 字节按地址升序处理 (而不去
按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Fletcher 校验和
比没有洞的情况下。 这很重要,因为内存中的 EPROM 映像
不会有洞。 你几乎总是想使用 -充满 在任何之前过滤
Fletcher 校验和过滤器。 如果提供的数据,您将收到警告
弗莱彻校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Fletcher%27s_校验和
可以选择种子值 sum1 和 sum2 在算法中,通过添加
命令行上的种子值。 如果没有明确显示,它们每个都默认为 0xFF
说。 默认值 (0) 表示一个空的 EPROM(全 0x00 或全 0xFF)
总和为零; 通过更改种子,空的 EPROM 将始终失败。
第三个可选参数是所需的总和,当校验和本身是
总和。 一个常见的值是 0x0000,放在一个 EPROM 的最后两个字节,所以
EPROM 的 Fletcher 16 校验和正好是 0x0000。 没有操纵
如果未指定此值,则执行最终值。
-Big_Endian_Fletcher_32 地址
此过滤器可用于将数据的 Fletcher 32 位校验和插入到
数据。 四个字节,大端顺序,插入给定的地址。 打孔
输入数据被忽略。 字节按地址升序处理 (而不去
按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Fletcher 校验和
比没有洞的情况下。 这很重要,因为内存中的 EPROM 映像
不会有洞。 你几乎总是想使用 -充满 在任何之前过滤
Fletcher 校验和过滤器。 如果提供的数据,您将收到警告
弗莱彻校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Fletcher%27s_校验和
-Big_Endian_Length 地址 [ 字节数 [ 宽度 ]]
此过滤器可用于插入数据的长度(高水减低
水)输入数据。 这包括长度本身。 如果数据已经
在长度位置包含字节,您需要使用排除过滤器,或者这个
会产生错误。 该值将用最高有效字节写入
第一的。 字节数默认为4,宽度默认为1,为
划分为实际长度,因此您可以以单词为单位插入宽度
(2) 或多头 (4)。
-Big_Endian_MAXimum 地址 [ 字节数 ]
此过滤器可用于插入数据的最大地址(高水位
+ 1) 进入数据。 这包括最大值本身。 如果数据已经
包含给定地址的字节,您需要使用排除过滤器,或者这个
会产生错误。 该值将用最高有效字节写入
第一的。 字节数默认为 4。
-Big_Endian_MINimum 地址 [ 字节数 ]
此过滤器可用于将数据的最小地址(低水位)插入到
数据。 这包括最小值本身。 如果数据已经包含字节
在给定的地址,您需要使用排除过滤器,否则会生成
错误。 该值将首先写入最高有效字节。 这
字节数默认为 4。
-位反转 [ 宽度 ]
该过滤器可用于反转每个数据字节中的位顺序。 经过
指定宽度(以字节为单位)可以颠倒顺序多字节
价值观; 这是使用字节交换过滤器实现的。
-字节交换 [ 宽度 ]
此过滤器可用于交换奇偶字节对。 通过指定一个
宽度(以字节为单位) 可以颠倒 4 和 8 字节的顺序,默认
是 2 个字节。 (超过 8 的宽度被假定为位数。)它不是
可以交换非二的幂地址。 要更改对齐方式,请使用
前后偏移过滤器。
-庄稼 地址范围
此过滤器可用于隔离一部分数据,并丢弃其余部分。
-排除 地址范围
此过滤器可用于排除一部分数据,并保留其余数据。 是
的逻辑补充 -庄稼 过滤。
-异或 折扣值
此过滤器可用于按位异或 折扣值 到每个数据字节。 这是
如果您需要反转位,则很有用。 只更改现有数据,没有漏洞
填充。
-填 折扣值 地址范围
此过滤器可用于填充数据中的任何间隙,其字节等于 折扣值.
填充只会发生在给定的地址范围内。
-Little_Endian_Adler_16 地址
此过滤器可用于将数据的 Adler 16 位校验和插入到
数据。 在给定的地址处插入两个字节,以小端顺序。
输入数据中的空洞将被忽略。 字节按升序处理
命令 (而不去 按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Adler 校验和
如果没有洞。 这很重要,因为内存中的 EPROM 映像将
没有洞。 你几乎总是想使用 -充满 在任何之前过滤
阿德勒过滤器。 如果提供给 Adler 的数据,您将收到警告
校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Adler-32
-Little_Endian_Adler_32 地址
此过滤器可用于将数据的 Adler 32 位校验和插入到
数据。 四个字节以小端顺序插入给定地址。
输入数据中的空洞将被忽略。 字节按升序处理
命令 (而不去 按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Adler 校验和
如果没有洞。 这很重要,因为内存中的 EPROM 映像将
没有洞。 你几乎总是想使用 -充满 在任何之前过滤
阿德勒校验和过滤器。 如果提供的数据用于
阿德勒校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Adler-32
-Little_Endian_Checksum_BitNot 地址 [ 字节数 [ 宽度 ]]
此过滤器可用于插入一个的补码(bitnot)校验和
data 进入数据,最低有效字节在前。 其他类似上面的。
-Little_Endian_Checksum_Negative 地址 [ 字节数 [ 宽度 ]]
此过滤器可用于插入二进制补码(负)校验和
数据进入数据。 其他类似上面的。
-Little_Endian_Checksum_Positive 地址 [ 字节数 [ 宽度 ]]
该过滤器可用于将数据的简单校验和插入到数据中。
其他类似上面的。
-Little_Endian_CRC16 地址 [ 变化...]
与 -Big_Endian_CRC16 过滤器,除了小端顺序。
-Little_Endian_CRC32 地址
与 -Big_Endian_CRC32 过滤器,除了小端顺序。
-Little_Endian_Exclusive_Length 地址 [ 字节数 [ 宽度 ]]
与 -Little_Endian_Length 过滤器,除了结果 而不去
包括长度本身。
-Little_Endian_Exclusive_MAXimum 地址 [ 字节数 ]
与 -Little_Endian_MAXimum 过滤器,除了结果 而不去
包括最大值本身。
-Little_Endian_Exclusive_MINimum 地址 [ 字节数 ]
与 -Little_Endian_MINimum 过滤器,除了结果 而不去
包括最小值本身。
-Little_Endian_Fletcher_16 地址
此过滤器可用于将数据的 Fletcher 16 位校验和插入到
数据。 在给定的地址处插入两个字节,以小端顺序。
输入数据中的空洞将被忽略。 字节按升序处理
命令 (而不去 按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Fletcher 校验和
比没有洞的情况下。 这很重要,因为内存中的 EPROM 映像
不会有洞。 你几乎总是想使用 -充满 在任何之前过滤
弗莱彻过滤器。 如果提供的数据用于
弗莱彻校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Fletcher%27s_校验和
-Little_Endian_Fletcher_32 地址
此过滤器可用于将数据的 Fletcher 32 位校验和插入到
数据。 四个字节以小端顺序插入给定地址。
输入数据中的空洞将被忽略。 字节按升序处理
命令 (而不去 按照它们在输入中出现的顺序)。
请注意: 如果您的数据中有漏洞,您将获得不同的 Fletcher 校验和
比没有洞的情况下。 这很重要,因为内存中的 EPROM 映像
不会有洞。 你几乎总是想使用 -充满 在任何之前过滤
Fletcher 校验和过滤器。 如果提供的数据,您将收到警告
弗莱彻校验和有漏洞。
您还应该知道,您的数据的下限和上限可能不是
与您的 EPROM 的下限和上限相同。 这是另一个原因
使用 -充满 过滤器,因为它将在整个 EPROM 中建立数据
地址范围。
http://en.wikipedia.org/wiki/Fletcher%27s_校验和
-Little_Endian_Length 地址 [ 字节数 [ 宽度 ]]
与 -Big_Endian_Length 过滤器,除了值将被写入
首先是最低有效字节。
-Little_Endian_MAXimum 地址 [ 字节数 ]
与 -Big_Endian_MAXimum 过滤器,除了值将被写入
首先是最低有效字节。
-Little_Endian_MINimum 地址 [ 字节数 ]
与 -Big_Endian_MINimum 过滤器,除了值将被写入
首先是最低有效字节。
-Message_Digest_5 地址
此过滤器可用于将 16 字节 MD5 哈希值插入到数据中,地址为
给定的。
-不是 此过滤器可用于逐位非每个数据字节的值。 这是
如果您需要反转数据,则很有用。 仅更改现有数据,无漏洞
被填满。
-抵消 字节数
此过滤器可用于将地址偏移给定的字节数。 不
数据丢失时,如果需要,地址将以 32 位环绕。 你可以
如果您希望将数据移动到内存中较低的位置,请使用负数作为偏移量。
请注意:执行起始地址与第一个是不同的概念
数据在内存中的地址。 如果您想更改显示器的位置
开始执行,使用 -执行开始地址 选项 (srec_cat(1) 仅)。
-或者 折扣值
此过滤器可用于按位或 折扣值 到每个数据字节。 这很有用
如果您需要设置位。 仅更改现有数据,不填充任何漏洞。
-随机填充 地址范围
此过滤器可用于用随机字节填充数据中的任何空白。 填充
只会发生在给定的地址范围内。
-Ripe_Message_Digest_160 地址
此过滤器可用于将 RMD160 散列插入数据中。
-Secure_Hash_Algorithm_1 地址
此过滤器可用于在数据中插入一个 20 字节的 SHA1 哈希值,在
给出的地址。
-Secure_Hash_Algorithm_224 地址
此过滤器可用于在数据中插入一个 28 字节的 SHA224 哈希值,在
给出的地址。 有关规范,请参阅 FIPS 1-180 的变更通知 2。
-Secure_Hash_Algorithm_256 地址
此过滤器可用于在数据中插入一个 32 字节的 SHA256 哈希值,在
给出的地址。 有关规范,请参阅 FIPS 180-2。
-Secure_Hash_Algorithm_384 地址
此过滤器可用于在数据中插入一个 48 字节的 SHA384 哈希值,在
给出的地址。 有关规范,请参阅 FIPS 180-2。
-Secure_Hash_Algorithm_512 地址
此过滤器可用于在数据中插入一个 64 字节的 SHA512 哈希值,在
给出的地址。 有关规范,请参阅 FIPS 180-2。
-分裂 多 [ 抵消 [ 宽度 ]]
此过滤器可用于将输入拆分为数据的子集,并压缩
地址范围,以便不留空隙。 这对于宽数据总线和
内存条带化。 这 多 是要拆分的字节倍数, 抵消 is
此范围内的字节偏移量(默认为 0), 宽度 是字节数
在倍数中提取(默认为 1)。 为了不留空隙,
输出地址是(宽度 / 多) 乘以输入地址。
-老虎 地址
此过滤器可用于将 24 字节 TIGER/192 散列插入到数据中
给出的地址。
-取消填充 折扣值 [ 最小游程 ]
此过滤器可用于在数据中创建间隙,字节数等于 折扣值。 您
可以把它看作是逆转的影响 -填 筛选。 缝隙只会
如果至少是 最小游程 一行中的字节(默认为 1)。
-Un_SPlit 多 [ 抵消 [ 宽度 ]]
此过滤器可用于反转分离过滤器的效果。 论据
是相同的。 请注意,地址范围已扩展(多 / 宽度) 次,
在条纹之间留下孔。
-惠而浦 地址
此过滤器可用于在数据中插入 64 字节的 WHIRLPOOL 散列,在
给出的地址。
地址 射击场
有八种方法可以指定地址范围:
最低限度 最多
如果在命令行中指定两个数字(十进制、八进制和十六进制是
理解,使用 C 约定)这是一个明确的地址范围。 这
最小值是包含的,最大值是不包含的(比最后一个地址多一个)。
如果最大值为零,则范围扩展到地址的末尾
空间。
-之内 输入规范
这表示使用指定的输入文件作为掩码。 该范围包括所有
放置指定的输入有数据,有洞的地方有洞。 输入
规范不必只是一个文件名,它可以是任何其他输入
规格可以。
另见 -过度 讨论运算符优先级的选项。
-超过 输入规范
这表示使用指定的输入文件作为掩码。 范围从
输入使用的最小到最大地址,没有任何漏洞,即使
输入有孔。 输入规范不必只是一个文件名,它可能是
任何其他输入规范都可以。
您可能需要附上 输入规范 在括号中以确保它不能
误解哪些参数符合哪些输入规范。 这是
当要遵循过滤器时尤其重要。 例如
文件名 -填充 0 -over 文件名2 -交换字节
组作为
文件名 -fill 0 -over '(' 文件名2 -交换字节')'
当你真正想要的是
'(' 文件名 -填充 0 -over 文件名2 ')' -交换字节
命令行表达式解析趋于“贪婪”(或右结合)
而不是保守(或左联想)。
地址范围 -Range-PADding 数
也可以将范围填充为给定的整个对齐倍数
数字。 例如
输入文件 -填充 0xFF -在 输入文件 -范围垫 512
将填补 输入文件 以便它由整个 512 字节的块组成,对齐于
512 字节边界。 数据中的任何大漏洞也将是 512 的倍数
字节,尽管它们可能已在填充前后的块中缩小。
此运算符与显式联合运算符具有相同的优先级。
地址范围 -相交 地址范围
您可以将两个地址范围相交以生成更小的地址范围。 这
交集运算符的优先级高于隐式联合运算符
(从左到右评估)。
地址范围 -联盟 地址范围
您可以合并两个地址范围以产生更大的地址范围。 工会
运算符的优先级低于相交运算符(从左计算到
对)。
地址范围 -区别 地址范围
您可以区分两个地址范围以生成更小的地址范围。 这
结果是删除了所有右手范围的左手范围。 这
差分运算符与隐式联合运算符具有相同的优先级
(从左到右评估)。
地址范围 地址范围
此外,所有这些方法都可以使用,并且使用多次,并且
结果将被合并(隐式联合运算符,与显式相同的优先级
联合运算符)。
计算 理念
上面大多数需要数字的地方,您可以提供以下之一:
- 折扣值
此表达式的值是表达式参数的负数。 请注意
空间 在减号和它的参数之间:这个空格是强制性的。
srec_cat in.srec -offset - -minimum-addr in.srec -o out.srec
此示例显示如何将数据移动到内存基址。
( 折扣值 )
您可以使用括号进行分组。 使用括号时,它们每个都必须是
单独的命令行参数,它们不能在前面或
以下选项,您需要引用它们以使它们通过外壳,例如
如'('和')'。
-最小地址 输入规范
这将插入指定输入文件的最小地址。 输入
规范不必只是一个文件名,它可以是任何其他输入
规格可以。
另见 -过度 讨论运算符优先级的选项。
-最大地址 输入规范
这将插入指定输入文件的最大地址加一。 输入
规范不必只是一个文件名,它可以是任何其他输入
规格可以。
另见 -过度 讨论运算符优先级的选项。
-长度 输入规范
这会在指定的输入文件中插入地址范围的长度,忽略
任何孔。 输入规范不必只是一个文件名,它可能是
任何其他输入规范都可以。
另见 -过度 讨论运算符优先级的选项。
例如 -超过 输入规范 option 可以被认为是 '('
-分钟 文件 -最大限度 文件 ')',除了它更容易打字,也更高效。
此外,计算值可以选择采用以下三种方式之一四舍五入:
折扣值 -向下舍入 数
- 折扣值 向下舍入为小于或等于 a 的最大整数
的整数倍 数.
折扣值 -Round_Nearest 数
- 折扣值 四舍五入到最接近的整数倍 数.
折扣值 -围捕 数
- 折扣值 向上舍入为大于或等于 a 的最小整数
的整数倍 数.
使用括号时,它们必须分别是一个单独的命令行参数,它们不能是
在前一个或后一个选项的文本中,您需要将它们引用到
让它们通过外壳,如'('和')'。
版权
srec_输入 1.58版
版权所有 (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011 彼得·米勒
- srec_输入 程序附带绝对没有保证; 有关详细信息,请使用 'srec_输入
-版本 执照' 命令。 这是免费软件,欢迎您重新分发
在一定条件下; 有关详细信息,请使用 'srec_输入 -版本 执照' 命令。
使用 onworks.net 服务在线使用 srec_input