如何用汇编语言实现关机,是通过向某个寄存器中赋特定的值来实现关机吗?
时间:2008-06-04
来源:互联网
请高手指点,谢谢!!
作者: z341223318 发布时间: 2008-06-04
Assembly code
mov ax,5301H xor bx,bx xor cx,cx int 15H mov ax,530EH xor bx,bx mov cx,102H int 15H mov ax,5307H mov bx,1 mov cx,3 int 15H
作者: cnzdgs 发布时间: 2008-06-04
但是大致的思想和流程应该是一样,请高手描述一下.
作者: z341223318 发布时间: 2008-06-04
这里如果不特别说明平台,大家都会按照x86来理解。
作者: cnzdgs 发布时间: 2008-06-04
软件能控制的关机在PC上通常就有两种方式:APM和ACPI,这都是BIOS和操作系统提供的功能,严格意义上来说与处理器没有多少关系。
在DOS中,关机是通过BIOS提供的APM接口来做的,不过这INT 15h中的APM不是所有系统中都有的,还是要先做一下安装检测。
Windows中,关机用API ExitWindowsEx就可以了,非常简单。
Linux中可以用sys_reboot或者machine_power_off,和Windows差不多。
你用ARM处理器,也不太可能是在裸机上开发吧,用操作系统的话估计也就是Linux、Nuclears这些东西,都有APM、ACPI支持。
作者: DelphiGuy 发布时间: 2008-06-04
作者: jennyvenus 发布时间: 2008-06-04
作者: DelphiGuy 发布时间: 2008-06-05
作者: szwsnraa 发布时间: 2008-06-05
Assembly code
.Model tiny .Code Org 100h Start: mov ax,5300h xor bx,bx int 15h ; Check APM install jnb @@1 jmp ExitSys @@1: cmp bx,504Dh ; sign jz @@2 jmp ExitSys @@2: cmp ax,101h ; ver 1.1 jnb @@3 jmp ExitSys @@3: push cx mov Version,ax mov ax,5400h xor bx,bx int 2Fh ; power.exe install check? xor ax,ax cmp bx,504Dh jnz @@4 push ax ; power.exe version mov ax,5401h mov bx,100h int 2Fh ; set management enable pop ax jb @@4 inc ax @@4: pop cx push ax push bx push cx mov ax,5301h xor bx,bx int 15h ; real-mode interface mov ax,530Eh xor bx,bx mov cx,101h int 15h ; driver version mov ax,530Fh mov bx,1 mov cx,bx int 15h ; engage power management mov ax,5308h mov bx,1 mov cx,bx int 15h ; enable power mamagement mov ax,5307h mov bx,1 mov cx,3 int 15h ; power off pop cx ; support device test cl,8 ; BIOS power management disable? jz @@5 push cx mov ax,5308h mov bx,1 xor cx,cx int 15h ; system stand-by pop cx @@5: test cl,10h ; BIOS power disengaged jz @@6 mov ax,530Fh mov bx,1 xor cx,cx int 15h ; disengage power management @@6: mov ax,5304h xor bx,bx int 15h ; disconnect interface pop bx pop ax test ax,ax jz ExitSys mov ax,5401h mov bl,bh mov bh,1 int 2Fh ; set APM firmware power manager enable ExitSys: mov ax,4c00h int 21h Version DW ? End Start
作者: homesos 发布时间: 2008-06-05
作者: dongyi940333 发布时间: 2008-06-06
作者: wxyztuv 发布时间: 2010-11-29
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28