A pass-by breakpoint setting method, comprising: receiving a breakpoint setting command; determining an instruction at a breakpoint in a source program code according to the breakpoint setting command; if one of the instruction at the breakpoint and an instruction prior, i.e. directly before, to the instruction at the breakpoint is a relative jump instruction, setting an instruction duplicate, comprising at least the instruction prior to the instruction at the breakpoint and the instruction at the breakpoint, for the relative jump instruction and an instruction next to the relative jump instruction, and setting the instruction at the breakpoint in the source program code as a first abnormal instruction, wherein the first abnormal instruction is a instruction set at the breakpoint in the source program code, wherein setting an instruction duplicate comprises: storing the relative jump instruction and the instruction next to the relative jump instruction in the instruction duplicate, translating the relative jump instruction stored in the instruction duplicate as an absolute jump instruction, wherein the jump relative offset of the relative jump instruction in the instruction duplicate is the storage position of the absolute jump instruction, the jump absolute offset of the absolute jump instruction being an original jump relative offset of the relative jump instruction, setting a second valid instruction next to the relative jump instruction in the instruction duplicate as a second abnormal instruction, which is used to return to the source program code from the instruction duplicate to continue to execute instructions in the source program code, and setting an instruction next to the absolute jump instruction as an invalid instruction, wherein the invalid instruction in particular is a nop or sync instruction. receiving a breakpoint setting command; determining an instruction at a breakpoint in a source program code according to the breakpoint setting command; if one of the instruction at the breakpoint and an instruction prior, i.e. directly before, to the instruction at the breakpoint is a relative jump instruction, setting an instruction duplicate, comprising at least the instruction prior to the instruction at the breakpoint and the instruction at the breakpoint, for the relative jump instruction and an instruction next to the relative jump instruction, and setting the instruction at the breakpoint in the source program code as a first abnormal instruction, wherein the first abnormal instruction is a instruction set at the breakpoint in the source program code, wherein setting an instruction duplicate comprises: storing the relative jump instruction and the instruction next to the relative jump instruction in the instruction duplicate, translating the relative jump instruction stored in the instruction duplicate as an absolute jump instruction, wherein the jump relative offset of the relative jump instruction in the instruction duplicate is the storage position of the absolute jump instruction, the jump absolute offset of the absolute jump instruction being an original jump relative offset of the relative jump instruction, setting a second valid instruction next to the relative jump instruction in the instruction duplicate as a second abnormal instruction, which is used to return to the source program code from the instruction duplicate to continue to execute instructions in the source program code, and setting an instruction next to the absolute jump instruction as an invalid instruction, wherein the invalid instruction in particular is a nop or sync instruction.