JCXZ: stands for Jump If CX register Is Zero
NOP: No Operation (computer processor instruction)...


- [younggay] 咯咯咯咯咯~~ 07/14 14:20
- [younggay] 这个题目确实经典!! 07/14 14:19
- [younggay] 没问题。都学过了,在来弄应该比较顺手喽。 07/14 14:18
- [younggay] OK! 07/14 14:10
- [younggay] 想想,果真好久没见博主了。 07/14 14:09
- [游客] 博主 如果把源程序中的 start 去了;and start改成end 你再从新编译,连接 03/22 14:56
- [游客] 不知道 03/19 20:49
- [游客] C中的指针很费神哟。不过,把概念和汇编中的内存地址、类型结合考虑一下,可能会有帮助。 03/19 20:15
- [游客] 这是干什么啊? 03/19 17:23
- [coco] 坚持 03/14 16:56
- [kevin812566059] 师姐: 你好!看了你的博客,的确是学了不少的汇编。我现在也想学,由于老师让我们做一个软件, 12/27 18:34
[2009-07-12 16:39] 跳转指令
阅读全文 |
评论次数(1) |
浏览次数(1250) |
所属类型(学习区)
[2009-07-12 16:36] JMP的学习
jmp short 标号 ;依据位移跳转 机器码包含位移 修改IP
jmp far 标号 ;机器码中包含目的地址 eg: 0aab:8909
jmp reg ;转移地址在寄存器中
jmp word ptr [bx] ;转移地址在内存中,段内转移
jmp dword ptr ds:[0] ;段间转移 见图:...
jmp far 标号 ;机器码中包含目的地址 eg: 0aab:8909
jmp reg ;转移地址在寄存器中
jmp word ptr [bx] ;转移地址在内存中,段内转移
jmp dword ptr ds:[0] ;段间转移 见图:...
阅读全文 |
评论次数(0) |
浏览次数(1016) |
所属类型(学习区)
[2009-07-12 15:51] 需要repeat的内容
寻址方式小结:
见图:...
见图:...
阅读全文 |
评论次数(0) |
浏览次数(1008) |
所属类型(学习区)
[2009-07-11 19:57] 回来了.重新学习一遍这本书!
每次重复看一本书的时候都会发现有新的收获。
好久没接触了,忘记了一些。重新学习了。
坚持到底!
人在北京的某个机房。只能找电子书了。下面是第二版的下载地址。很不错的一个论坛里的书。
http://www.51leifeng.net/viewthread.php?tid=23729&extra=&highlight=%E7%8E%8B%E7%88%BD&page=1...
好久没接触了,忘记了一些。重新学习了。
坚持到底!
人在北京的某个机房。只能找电子书了。下面是第二版的下载地址。很不错的一个论坛里的书。
http://www.51leifeng.net/viewthread.php?tid=23729&extra=&highlight=%E7%8E%8B%E7%88%BD&page=1...
阅读全文 |
评论次数(1) |
浏览次数(1388) |
所属类型(学习区)
[2008-03-12 15:08] 为c语言学习找的配置编译环境的文章!
以下为转载!
打造Windows环境下的GCC+VIM
摘要
用vim编写源代码,用gcc编译连结程序几乎已成为LINUX下程序设计的标准开发模式了,(当然emacs也是非常出色和流行的),本文教你如何在Windows下做到同样的事情。(2003-05-10 09:33:27)
--------------------------------------------------------------------------------
By red army
用vim编写源代码,用gcc编译连结程序几乎已成为LINUX下程序设计的标准开发模式了,(当然emacs也...
打造Windows环境下的GCC+VIM
摘要
用vim编写源代码,用gcc编译连结程序几乎已成为LINUX下程序设计的标准开发模式了,(当然emacs也是非常出色和流行的),本文教你如何在Windows下做到同样的事情。(2003-05-10 09:33:27)
--------------------------------------------------------------------------------
By red army
用vim编写源代码,用gcc编译连结程序几乎已成为LINUX下程序设计的标准开发模式了,(当然emacs也...
阅读全文 |
评论次数(2) |
浏览次数(591) |
所属类型(学习区)
[2008-03-12 13:35] 日志
呵呵,最近都会没多少时间了,呵呵,晚上学校会停灯,不能再在12后学习汇编了。时间会集中在中午或是晚上11点半前吧。
论坛的人都好热心的,再次谢谢各位喽~~~呵呵。加油。一定把汇编学好,c语言以前学过一大半,现在将要进入重新学习中!。。给自已加油喽!
ps:学校的好几门课还没学好,数据库,数据结构。。。。特别是计算机接口。。。。-_-!!...
论坛的人都好热心的,再次谢谢各位喽~~~呵呵。加油。一定把汇编学好,c语言以前学过一大半,现在将要进入重新学习中!。。给自已加油喽!
ps:学校的好几门课还没学好,数据库,数据结构。。。。特别是计算机接口。。。。-_-!!...
阅读全文 |
评论次数(2) |
浏览次数(601) |
所属类型(学习区)
[2008-03-07 03:51]
关于汇编中子程序的概念觉得好神奇的
code segment
start:
main:
...
call s1
...
call s2
...
mov ax,4c00h
int 21h
s1:
...
call s3
...
ret
s2:
...
ret
s3:
...
ret
code ends
end main
嘿嘿。这是书中的.关于call 和ret
不过我们还有retf
下面是我的理解:
mainFunction segment
main:
...
call far ptr function
...
mov ax,4c00h
int...
start:
main:
...
call s1
...
call s2
...
mov ax,4c00h
int 21h
s1:
...
call s3
...
ret
s2:
...
ret
s3:
...
ret
code ends
end main
嘿嘿。这是书中的.关于call 和ret
不过我们还有retf
下面是我的理解:
mainFunction segment
main:
...
call far ptr function
...
mov ax,4c00h
int...
阅读全文 |
评论次数(10) |
浏览次数(970) |
所属类型(学习区)
[2008-03-05 00:38] 关于loop指令的机器码研究
图中loop指令的机器码为E2F9
其中F9是-7的补码哦。。0000 0111的补码为1111 1001转为16进制则哦 :F9
总结
关于jmp,jcxz, loop指令都是通过位移来进行跳转或循环的!...
其中F9是-7的补码哦。。0000 0111的补码为1111 1001转为16进制则哦 :F9
总结
关于jmp,jcxz, loop指令都是通过位移来进行跳转或循环的!...
阅读全文 |
评论次数(3) |
浏览次数(461) |
所属类型(学习区)
[2008-03-02 01:43] 关于用db,dw,dd定义数据段时数据在内存中存储的方式分别(嘿嘿,原创)
在定义时,如果不加h后缀,则是10进制表示。可以定义为:
db 10h 来表示10h为16进制
还可以定义成混合型哦!
如db 1,2,10h 其中(1和2都是10进制)
(1)
db 1,2,3,4,5,6
内存中的形式为:
ds:0000 01 02 03 04 05 06
(2)
dw 1,2,3,4,5,6
内存中的形式为:
ds:0000 01 00 02 00 03 00 04 00-05 00 06 00
(3)
dd 1,2,3,4
内存中的形式为:
ds:0000 01 00 00 00 02 00 00 00-03 00 00 0...
db 10h 来表示10h为16进制
还可以定义成混合型哦!
如db 1,2,10h 其中(1和2都是10进制)
(1)
db 1,2,3,4,5,6
内存中的形式为:
ds:0000 01 02 03 04 05 06
(2)
dw 1,2,3,4,5,6
内存中的形式为:
ds:0000 01 00 02 00 03 00 04 00-05 00 06 00
(3)
dd 1,2,3,4
内存中的形式为:
ds:0000 01 00 00 00 02 00 00 00-03 00 00 0...
阅读全文 |
评论次数(3) |
浏览次数(455) |
所属类型(学习区)
[2008-03-02 00:12] 第8章中关于除法的question
在书中,说除数可以保存在寄存器中也可以保存在内存单元中
div reg
div 内存单元
这上面两种方法都该正确,可是我在用div [bx]命令时出现错误。
。。-_-!~
呵呵,才用vim写了代码,贴出来:
==============MyCode===========================
assume cs:code
code segment
;cal 100001/100
mov ax,0
mov ds,ax
mov bx,0
mov dx,1h;save the number
mov ax,86a1h;will be dived
...
div reg
div 内存单元
这上面两种方法都该正确,可是我在用div [bx]命令时出现错误。
。。-_-!~
呵呵,才用vim写了代码,贴出来:
==============MyCode===========================
assume cs:code
code segment
;cal 100001/100
mov ax,0
mov ds,ax
mov bx,0
mov dx,1h;save the number
mov ax,86a1h;will be dived
...
阅读全文 |
评论次数(4) |
浏览次数(498) |
所属类型(学习区)