您好我需要一些帮助来了解这个汇编代码中发生了什么:
.file "mystery.c"
.text
.globl mystery
.type mystery, @function
mystery:
pushq %rbp
movq %rsp, %rbp
movl %edi, -20(%rbp)
movl $1, -16(%rbp)
movl $0, -12(%rbp)
movl $0, -8(%rbp)
cmpl $2, -20(%rbp)
jg .L2
movl $1, %eax
jmp .L3
.L2:
movl $2, -4(%rbp)
jmp .L4
.L5:
movl -12(%rbp), %eax
movl -16(%rbp), %edx
leal (%rdx,%rax), %eax
movl %eax, -8(%rbp)
movl -16(%rbp), %eax
movl %eax, -12(%rbp)
movl -8(%rbp), %eax
movl %eax, -16(%rbp)
addl $1, -4(%rbp)
.L4:
movl -4(%rbp), %eax
cmpl -20(%rbp), %eax
jle .L5 …Run Code Online (Sandbox Code Playgroud) 你好我试图通过创建我自己的插件在imagej中实现一个Sobel过滤器.我有代码可以工作,但它没有正确突出边缘白色.我已经尝试了一段时间,我只是无法弄清楚我做错了什么,或者我不能完全理解索贝尔滤波器的植入和/或不理解数学.任何帮助将不胜感激.这是我的代码:
import ij.*;
import ij.process.*;
import ij.gui.*;
import java.util.*;
import java.awt.*;
import ij.plugin.filter.*;
import ij.process.*;
import java.lang.Math.*;
public class Filter_Plugin implements PlugInFilter {
String title = null;
int sobel_x[][] = {{-1,0,1},
{-2,0,2},
{-1,0,1}};
int sobel_y[][] = {{-1,-2,-1},
{0,0,0},
{1,2,1}};
int pixel_x;
int pixel_y;
public int setup(String arg, ImagePlus im) {
title = im.getTitle();
return DOES_8G;
}
public void run(ImageProcessor ip) {
int w = ip.getWidth();
int h = ip.getHeight();
ImageProcessor copy = ip.duplicate();
for (int x=1; x < w-2; x++) …Run Code Online (Sandbox Code Playgroud)