该程序模拟UNIX中save与resume函数,并介绍在VC中如何使用汇编进行机器级的操作. 主函数很简单首先引入两个外部函数,extern "C"表示按传统C命名习惯.函数save将程序指针保存在(*s)中并返回0,为什么有 if(save(&sp)){...} if后的语句看起来永远都不会被执行,但是运行结果表明它被执行了.这个问题同UNIX中处理机调度函数(switch)的那个if语句(第一句)一样. 程序执行完save(&sp)后得到因为条件为假而执行else语句,却在判断之前将程序指针保存在sp中了. else语句中的resume(&sp),该函数很狡猾将堆栈中的返回地址改变了,改到了sp所指出,即将程序指针改到了执行条件判断前.resume返回1,条件满足,执行if语句. save函数堆栈: eip ebp+8 s ebp+4 ebp ebp+0 resume函数堆栈与save的相同. 新建一个win32的工程,将unixc.cpp和unix.obj加入过程即可. unix.obj是用masm6.11生成的:ml /c /coff unix.asm,生成coff格式的obj而不是omf格式.
上传时间: 2015-09-10
上传用户:变形金刚
这个程序是用C语言实现的。我使用了单向链表来实现对药品的增加. 删除等操作. 我修改了几次算法, 优化了一下. 如果有不足之处,还望各位多多指点。 设计目的: 这是一个专为小药店设计的药品管理系统. 可以对药品自由的进行添加、删除、查找等操作. 功能简介:(每个数字键对应相应的功能, 按数字键后,请按Enter键) "1 - 增加药品": 向系统增加一种药品 "2 - 删除药品": 删除系统中的一种药品 "3 - 查找药品": 输入药品的名称或编号, 如果找到了就显示药品信息 "4 - 更新药品": 增加或减少某种药品的数量 "6 - 显示药品列表": 按大小显示所有的药品的信息 "7 - 显示销售记录":显示每日或每月的销售记录 "8 - 修改密码": 更改登陆系统的密码 "0 - 退出": 退出系统。 退出时,程序自动保存数据.
上传时间: 2014-10-12
上传用户:6546544
TWI使用范例是AVR单片机对AT24C02系列芯片的读写操作
上传时间: 2015-09-11
上传用户:chens000
图书管理系统简装版软件介绍 用vb操作access数据库,有学号管理,图书管理,借阅管理。 2.使用前请先将借阅者的学号登陆到学号 管理数据库,把图书馆的书籍登陆登陆到书籍管理数据库,借书时自动验证书籍、学号是否合法,借阅者 是否有借阅权限...
上传时间: 2014-01-25
上传用户:hebmuljb
EBSCOhostUsersGuide6.1_EBSCOhost 使用手册 6.1 EBSCOhostUsersGuide6.1_EBSCOhost 使用手册 6.1.pdf
标签: EBSCOhostUsersGuide EBSCOhost 6.1
上传时间: 2015-09-15
上传用户:www240697738
一个关于MSFlexGrid使用的例子,能够进行表格的编辑等操作
标签: MSFlexGrid 表格 编辑 操作
上传时间: 2014-01-09
上传用户:FreeSky
这个java类文件主要使用了java io访问及文件操作处理。电信设备产生的大量的日志文件的内容需要写入到数据库中,设备在每天将产生数以百计的日志文件,这些日志文件的内容存储遵循一定的格式,本文件实现将这些文件内容合并到一个文件中去,读者可以参考部分对java file 的使用
上传时间: 2013-12-19
上传用户:lifangyuan12
这是一个使用VB操作RAR文件的示例,使用了UNRAR.DLL文件
标签: 操作
上传时间: 2015-09-19
上传用户:zjf3110
设计模式之Template Template定义:定义一个操作中算法的骨架,将一些步骤的执行延迟到其子类中. 其实Java的抽象类本来就是Template模式,因此使用很普遍.而且很容易理解和使用
上传时间: 2014-12-05
上传用户:D&L37
跟我一起写Makefile.pdf 掌握Makefile的使用。
标签: Makefile
上传时间: 2015-09-21
上传用户:asasasas