我试图禁用一些数字相机固件的图像处理代码。在固件转储中,我发现了一些*.bin文件,它们的神奇编号对应于"Dyalog映射文件64位版本19.145“(来自unix命令)。
在了解了Dyalog APL之后,我安装了未注册的Dyalog APL版本.然而,我不知道如何打开这些文件。我尝试使用MAP函数:
⎕MAP'C:\fc.bin'
NONCE ERROR这是打开文件的正确方式吗?是否有其他方法可以这样做?或者我可以用别的程序?
如果我的研究到目前为止是准确的,大多数APL代码都会被解释。因此,这些文件不太可能被编译。虽然如果我偏离轨道,这些文件也可以编译程序的DSP芯片。
下面是文件的前几个字节。
00000000: aa0a 1391 0400 0002 01e9 0001 0200 0100 ................
00000010: 0000 0000 5341 4a50 4744 5f43 3078 3032 ....SAJPGD_C0x02
00000020: 0200 0006 0100 0000 0100 0000 5000 0000 ............P...
00000030: 0002 0000 4a50 4744 4543 5f43 3078 3030 ....JPGDEC_C0x00
00000040: 0000 0000 0000 0000 0000 0000 0000 0000 ................如果有帮助的话,我正试图禁用索尼ILCE相机上内置的热像素检测。
谢谢!
发布于 2017-03-02 13:38:35
我强烈怀疑这些.bin文件是否是Dyalog映射文件。我相当肯定Dyalog APL不会在相机内运行。
不过,我可以告诉你我们映射的文件。Dyalog映射文件只包含数据。这里记录了我们的⎕映射函数:
http://help.dyalog.com/15.0/Content/Language/System%20Functions/map.htm
)load util
(⊃83 323 ⎕DR 2 3 4⍴⍳24)∆MPUT'e:\tmp\myvar'
)clear
clear ws
var←⎕map 'e:\tmp\myvar' 'w'
var
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16
17 18 19 20
21 22 23 24
⍴var
2 3 4
od -X e:/tmp/myvar gives this output:
0000000 0fe808aa 00000084 00000000 00000000
0000020 00000000 00000000 00000000 00000000(从这里到这里的所有零在偏移量0x7740处)
0007740 00000000 00000000 ffffffe2 00000000
0007760 0001143f 00000002 00000003 00000004
0010000 00000001 00000002 00000003 00000004
0010020 00000005 00000006 00000007 00000008
0010040 00000009 0000000a 0000000b 0000000c
0010060 0000000d 0000000e 0000000f 00000010
0010100 00000011 00000012 00000013 00000014
0010120 00000015 00000016 00000017 00000018
0010140致以敬意,
文斯
https://stackoverflow.com/questions/42477376
复制相似问题