-u
0b5a:0005 b80000 mov ax,0000
0b5a:0008 90 nop
0b5a:0009 90 nop
0b5a:000a bf0800 mov di,0008
0b5a:000d be2000 mov si,0020
0b5a:0010 2e cs:
0b5a:0011 8b04 mov ax,[si]
0b5a:0013 2e cs:
0b5a:0014 8905 mov [di],ax
0b5a:0016 ebf0 jmp 0008
0b5a:0018 b80000 mov ax,0000
0b5a:001b cd21 int 21
0b5a:001d b80000 mov ax,0000
0b5a:0020 ebf6 jmp 0018
0b5a:0022 90 nop
0b5a:0023 0f db 0f
0b5a:0024 7303 jnb 0029
-g
program terminated normally
-u 0b5a:0005
0b5a:0005 b80000 mov ax,0000
0b5a:0008【ebf6】jmp 0000 这里的代码是复制了以下0b5a:0020处的,所以说这里的完全是没有变的,而在0b5a:0020处位移是-10,所以在这里是返回到0b5a:0000处。
0b5a:000a bf0800 mov di,0008
0b5a:000d be2000 mov si,0020
0b5a:0010 2e cs:
0b5a:0011 8b04 mov ax,[si]
0b5a:0013 2e cs:
0b5a:0014 8905 mov [di],ax
0b5a:0016 ebf0 jmp 0008
0b5a:0018 b80000 mov ax,0000
0b5a:001b cd21 int 21
0b5a:001d b80000 mov ax,0000
0b5a:0020 ebf6 jmp 0018
0b5a:0022 90 nop
0b5a:0023 0f db 0f
0b5a:0024 7303 jnb 0029
- [dragon-zn] 1、 汇编语言程序载入内存后处于64K空间以外的数据和指令将无法使用和执行。(可用JMP指令跳转到6 10/19 15:41
- [游客] 很好,我做这个用了四个循环,现在想起来,冤 08/20 14:40
- [crazyman] 为了发展,还是从汇编这样的底层入手吧。 04/16 09:43
- [crazyman] 没什么好说的。 03/25 11:18
- [wsrf] 支持一下,呵呵 03/18 10:49
- [mengxinjinglong] 呵呵~这个我放心了,C语言我已经自学过了,到时候回家都会一起学习来巩固基础的额!汇编作业会在回家的时 12/24 12:04
- [younggay] 啊?!放假回来再交啊?!!! 到时候大家都开始学C了。 12/24 11:14
- [mouse] jmp指令 相对位移:-) 12/04 10:20
- [pascale] 我感觉你对第一题的第二问回答的不对。 我感觉是因为一个数据段的段名只是这个段的段地址而不是地址 12/04 00:20
- [younggay] 程序指令内存空间默认PSP后为程序入口地址, ------------ 不是psp开始为入口,加 11/21 13:27