我已经使用C#窗体形式读取了图像,并成功将位图转换为1D整数数组,以将其作为汇编函数的参数传递,该函数将用于执行中值滤波器逻辑,我已将链接组件使用包含包含中值过滤器逻辑的汇编函数的DLL文件与C#项目进行项目。
现在我的问题,让我说我有一个7x7阵列叫做表来测试逻辑
TITLE MASM Template(main.asm)
INCLUDE Irvine32.inc
.data
table BYTE 1, 2, 3, 4, 5, 6, 7
BYTE 8, 9, 10, 11, 12, 13, 14
BYTE 15, 16, 17, 18, 19, 20, 21
BYTE 22, 23, 24, 25, 26, 27, 28
BYTE 29, 30, 31, 32, 33, 34, 35
BYTE 36,37, 38, 39, 40, 41, 42
BYTE 43, 44, 45, 46, 47, 48, 49
我想在第一个索引周围制作3x3相邻像素窗口(像素 1 )。
0 0 0
0 1 2
0 8 9
然后使用任何排序算法对其进行排序,并取中值并将其替换为像素值。 那么像素 2 的第二个窗口将是
0 0 0
1 2 3
8 9 10
如何使用Irvine x86汇编语言? 如何知道数组的边界以放置零而不是垃圾值?