CPU要读写一个内存单元的时候,必须先给出这个内存单元的地址。内存单元由2部分组成。8086CPU中,内存地址由以下组成。1:段地址2:偏移地址8086CPU中,有一个DS寄存器地址,通常用来存放数据的段地址。比如我们要读取10000H的单元内容,可以用如下的程序段进行。mov bx,1000Hmo...
分类:
其他好文 时间:
2015-05-28 13:53:43
阅读次数:
182
在CPU中,用16位寄存器来存储一个字。高8位放高8位的内容,低8位放低八位的内容。在内存中存储时,由于内存单元是字节单元,则一个字需要用2个地址连续的内存来存放。则这个字的低字节存放在低字节的单元中,高字节则存放在高字节的单元中。比如以下数据:mov ax,4e20Hax是16位通用寄存器,分高8...
分类:
其他好文 时间:
2015-05-28 12:27:24
阅读次数:
131
Borland Delphi 6.0 - 7.000509CB0 > $ 55 PUSH EBP00509CB1 . 8BEC MOV EBP,ESP00509CB3 . 83C4 EC ADD ESP,-1400509CB6 . 53 PUSH EBX00509CB7 . 56 PUSH ESI0...
分类:
编程语言 时间:
2015-05-28 00:30:28
阅读次数:
285
程序0:把字符串 "adcdef"转换成大写, 把字符串 "FGHJK"转换成小写data segmentdb 'adcdef'db 'XCVBNM'data endscode segmentstart:mov ax,datamov ds,axmov bx,0mov cx,6mov di,0s:mo...
分类:
编程语言 时间:
2015-05-25 18:22:50
阅读次数:
175
执行下面3条指令后,CPU几次修改IP,什么时候,IP的值是多少?MOV ax,bx 修改一次,IP=0003HSUB ax,ax 修改一次,IP=0006HJMP ax 执行前修改一次,IP=0008H。执行后修改一次,IP=ax=0000H SUB是减法。结果是这个程序继续...
分类:
编程语言 时间:
2015-05-24 23:33:48
阅读次数:
155
1、计算mov ax,62627 ax=F4A3Hmov ah,31H ax=31A3Hmov al,23H ax=3123Hadd ax,ax ax=6246Hmov bx,826CH bx=826CHmov cx,ax ...
分类:
编程语言 时间:
2015-05-24 23:12:51
阅读次数:
159
当行注释:行前加';'
例如:
mov ax,0
; mov cx,3
上面的第二句不会被执行
多行注释:
not_use macro
注释
endm...
分类:
其他好文 时间:
2015-05-23 18:26:34
阅读次数:
128
mov ax,001AH ax = 001AH; 将1AH 移动到ax中,值为001AH,ax为16位通用寄存器。所以得到的值为001AHmov bx,0026H bx = 0026H; 将0026H 移动到BX中,BX为16位通用寄存器。add al,bl al = 0040H BL = 0026...
分类:
其他好文 时间:
2015-05-22 01:50:22
阅读次数:
125
视频文件容量一般都很大,修复的时间一般都很漫长。花了长时间修复的视频,打开时却发现已经被损坏了,播放不出来,或者播放起来断断续续,这个时候该怎么办呢?数据恢复能修复avi、mp4、mpg、mov、flv、swf等多种格式的视频文件,在视频修复后提示解码错误,或无法进行预览,..
分类:
其他好文 时间:
2015-05-21 19:49:43
阅读次数:
142
内存访问首先要有地址,8086pc中的段地址存放在 ds 寄存器中(ds 和 cs是不一样的,cs是定位地址用于读取内存中的指令或者数据,而ds是读取内存中的数据时使用,下面我们会明白区别)
将内存中的数据写入寄存器:
mov bx,1000H
mov ds,bx
mov al,[0]
第一句是把1000H给bx(寄存器),第二句把bx中的值给ds(段地址寄存器),第三句从100...
分类:
其他好文 时间:
2015-05-20 00:34:44
阅读次数:
149