汇编
sunchaohuang
苦海无边,回头是岸
展开
-
补码
古人说得好:“温故而知新”,可惜现在都忙于“知新”,没有太多的时间去回顾原来的知识了。直到今天,遇到了实际问题,才突然感觉到原来很多东西在记忆中已经非常模糊,记不清了。 “温故”系列主要是以网友的文章、观点为主,也就是说多数将会是转贴文章,因为这些基础知识总会得到专家关注的,而且专家的解释也会比我清楚得多。 原码、反码和补码是计算机运算的基础,这篇“闲扯原码、反码、补码”就说的比较清楚。 本人大致转载 2008-09-09 10:11:00 · 1070 阅读 · 0 评论 -
天书夜读:从汇编语言到Windows内核编程
走近汇编理解与内核编程 2006年,我工作时的座位坐在wowocock旁边。wowocock写代码的时候代码风格一团糟。满篇都是混乱型的命名、超级跨全工程的全局变量,诡异的跳转。而且屡教不改。但是调程序却很牛,开着WinDbg,基本上不用看源码,也知道发生了什么。 因为不用看源码,所以看Windows内核原有的代码和看自己的代码基本没有太大的区别,只要别跟太远。这样就获得了远远超出转载 2009-02-11 09:29:00 · 3459 阅读 · 7 评论 -
在int9中断中如何使用call方式进行程序跳转
对于一个刚读完《王爽汇编语言》的初学者来说,在int9中断中使用call table[0] 这种方式进行跳转是个令人头痛的问题。这个问题困恼了我许多天最后还是CSDN的朋友帮我解决了这个问题!该问题出现在 《王爽汇编语言》第16章的试验中。 问题如下:这是一个16位dos程序,根据键盘输入(int9中断)来做相应的处理,以下代码能够正确运行,却无原创 2009-02-17 15:25:00 · 1644 阅读 · 0 评论 -
MS-DOS简单命令
DOS常用命令集 一)MD——建立子目录 1.功能:创建新的子目录 2.类型:内部命令 3.格式:MD[盘符:][路径名]〈子目录名〉 4.使用说明: (1)“盘符”:指定要建立子目录的磁盘驱动器字母,若省略,则为当前驱动器; (2)“路径名”:要建立的子目录的上级目录名,若缺省则建在当前目录下。 例:(1)在C盘的根目录下创建名为FOX的子目录;(2)在FOX子目录下再创建USER子目录。 C:原创 2009-02-20 15:14:00 · 952 阅读 · 1 评论 -
finit指令
每当执行一个新的浮点程序时,第一条指令都应该是初始化FPU的指令finit。该指令清除浮点数据寄存器栈和异常,为程序提供一个“干净”的初始状态。否则,遗留在浮点寄存器栈中的数据可能会产生堆栈溢出。另一方面,浮点指令程序段结束,也最好清空浮点数据寄存器。浮点传送程序 .model small .8087 ;识别原创 2010-01-15 12:45:00 · 5759 阅读 · 1 评论 -
ARM中断原理, 中断嵌套的误区,中断号的怎么来的
几天前一个学生问我ARM中断嵌套的问题,我才发现原在我心中理所当然的事对学生来说理解实属不易。 ARM有七种模式,我们这里只讨论SVC、IRQ和FIQ模式。 我们可以假设ARM核心有两根中断引脚(实际上是看不见的),一根叫 irq pin, 一根叫fiq pin. 在ARM的cpsr中,有一个I位和一个F位,分别用来禁止IRQ和FIQ的。 先不说中断转载 2009-12-04 14:19:00 · 1561 阅读 · 0 评论 -
ARM中的中断处理
几天前一个学生问我ARM中断嵌套的问题,我才发现原在我心中理所当然的事对学生来说理解实属不易。 ARM有七种模式,我们这里只讨论SVC、IRQ和FIQ模式。 我们可以假设ARM核心有两根中断引脚(实际上是看不见的),一根叫 irq pin, 一根叫fiq pin. 在ARM的cpsr中,有一个I位和一个F位,分别用来禁止IRQ和FIQ的。 先不说中断转载 2009-12-04 14:26:00 · 1699 阅读 · 0 评论 -
NiosII CPU的结构与编程模型
NiosII CPU的结构与编程模型NiosII CPU属于典型的RISC CPU,其特点是:结构简洁、指令集简练、指令等长、具有大量的通用寄存器。下图为NiosII的结构框图。 NiosII CPU由若干基本模块和一系列可选模块构成。基本模块包括:ALU、程序控制器、地址发生器、中断控制器、寄存器组等;可选模块有:Jtag调试器、用户指令逻辑、指令Cache、数据Cache等。NiosII 共原创 2009-12-04 14:28:00 · 2711 阅读 · 1 评论