数据转换为命令~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

sunchaohuang 2009-01-14 05:31:22
65259为jmp s的机器码,如何将65259数据当做命令执行


assume cs:code
code segment
s:
mov ax,65259
mov cs:[0],ax
call dword ptr cs:[0]
;jmp s
;jmp short s
;jmp near ptr s
;jmp far ptr s
;jmp far ptr s
code ends

end s
...全文
155 9 打赏 收藏 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
cxdzxc 2009-01-15
  • 打赏
  • 举报
回复
10进制 65259 = 16进制 FE EB---貌似1个跳转指令,用DW 65259 ,程序只要能顺序或转移到这个内存地址,这里就会被当成指令执行
invaliddescriptor 2009-01-15
  • 打赏
  • 举报
回复
不懂,帮顶
success000 2009-01-15
  • 打赏
  • 举报
回复
不懂,帮顶
dalixux 2009-01-15
  • 打赏
  • 举报
回复
你的代码改成 call word ptr cs:[0]
yuzl32 2009-01-14
  • 打赏
  • 举报
回复

assume cs:code
code segment
dw 65259

mov ax,4c00h
int 21h
s:
mov ax,0
call word ptr [ax] ;直接跳到dw 65259执行

code ends

end s

killbug2004 2009-01-14
  • 打赏
  • 举报
回复
jmp相对跳转,使用的是相对偏移,使用opcode时要注意

运行时修改代码段要注意保证代码段可写属性
cnzdgs 2009-01-14
  • 打赏
  • 举报
回复
如果要在运行中修改,可以在代码中定义一个变量,然后修改该变量,例如:
l1:
mov ax, offset l1
sub ax, offset jmpcode+3
mov cs:jmpoff, ax
jmpcode DB 0E9H
jmpoff DW ?
这样执行到jmpcode处就会跳转到l1标号。
大熊猫侯佩 2009-01-14
  • 打赏
  • 举报
回复
jmp s : 65259 ;这里是相对跳转,当作指令执行没问题,问题是可能不是你想要的跳转。

like this:
mov ax,65259
jmp $-2
cnzdgs 2009-01-14
  • 打赏
  • 举报
回复
在代码中写
DW 65259
内容概要:本文研究了面向复杂海洋环境的无人水面艇(USV)编队控制问题,提出了一种双层模型预测控制(MPC)理论与鲁棒协同控制方法。上层负责编队构型的优化与全局路径规划,通过求解优化问题实现多艇协同构型的动态调整;下层基于非线性MPC框架实现各无人艇的运动控制与精确轨迹跟踪,充分考虑了系统动力学约束、外部环境干扰(如风浪流)及模型不确定性。通过引入鲁棒控制策略,增强了系统在复杂动态海洋环境下的抗干扰能力与控制稳定性。研究在Matlab平台上完成了算法的完整代码实现与仿真验证,结果表明所提方法能够有效实现多艇在复杂环境下的高精度、强鲁棒性协同编队控制。; 适合人群:具备自动控制、机器人、海洋工程或相关专业背景,熟悉Matlab/Simulink仿真工具,从事多智能体协同控制、无人系统自主导航或模型预测控制算法研究的研发人员与研究生。; 使用场景及目标:①为无人水面艇在复杂、动态、不确定的海洋环境下执行编队任务提供先进的控制理论与技术方案;②通过完整的Matlab代码实现,方便研究人员复现、验证、改进双层MPC与鲁棒协同控制算法;③促进模型预测控制与鲁棒控制理论在多智能体系统、无人装备协同作业等领域的深度融合与应用发展。; 阅读建议:建议读者结合提供的Matlab代码,深入剖析双层控制架构的设计逻辑、MPC优化问题的构建过程以及鲁棒性处理机制的具体实现,重点关注算法如何处理模型误差、外部干扰和系统硬约束,以全面掌握其在复杂场景下的工程应用潜力。

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧