(1) 有问题吧
(2) 0000:4N 0000:4N+2...


- [060050219] 借用一下了 03/01 20:11
- [happy] 太有才了! 01/17 22:24
- [Wednesday] 这问题提得太笼统了 笼统的,想建议你把机器砸了 12/09 21:04
- [happy] 对了。 12/03 15:01
- [happy] 哦,我明白了,是有点儿问题,把那个值改小一点儿吧。因为在题目中,4号中断源的内存情况没有列出,改成3 12/03 14:18
- [cook702] 此程序是有问题的,我敢肯定博主没有经过测试,否则就是博主太不细心了。自己可以测试一下,此错误是很明显 12/03 13:45
- [cook702] (1)有什么问题呢? 不知道什么意思! 12/03 13:34
- [fishboy] 当然,我的分析是基于表面的,对于程序中的具体功能,我想上面的这个程序好像没有真正的体现出来。 12/01 12:18
- [fishboy] mov ax,0fff0h add ax,0010h ;执行后实际结果为 12/01 12:17
- [Wednesday] 收藏! 11/26 20:40
- [macaulay] 你是happy我就是unhappy 10/18 18:06
- [wubizao] 于惊涛海浪中把握方向 于纷繁世界里坚守信念 鼓励送你 共同进步 11/10 20:23
[2007-12-02 10:47] 检测点12.1
阅读全文 |
评论次数(2) |
浏览次数(1180) |
所属类型(汇编作业)
[2007-12-02 10:44] 实验11
assume cs:code
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
start: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:push cx
push si
mov c...
data segment
db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends
code segment
start: mov ax,data
mov ds,ax
mov si,0
call letterc
mov ax,4c00h
int 21h
letterc:push cx
push si
mov c...
阅读全文 |
评论次数(1) |
浏览次数(1185) |
所属类型(汇编作业)
[2007-12-01 11:17] 检测点11.4
assume cs:code,ss:stack
stack segment
db 16 dup (0)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,0
push ax
popf ;把栈中的数据送入标志寄存器目的将所有的psw清0
mov ax,0fff0h
add ax,0010h ;执行后...
stack segment
db 16 dup (0)
stack ends
code segment
start: mov ax,stack
mov ss,ax
mov sp,16
mov ax,0
push ax
popf ;把栈中的数据送入标志寄存器目的将所有的psw清0
mov ax,0fff0h
add ax,0010h ;执行后...
阅读全文 |
评论次数(2) |
浏览次数(1318) |
所属类型(汇编作业)
[2007-12-01 10:10] 检测点11.3
(1)
assume cs:code
code segment
start: mov ax,0f000h
mov ds,ax
mov bx,0
mov dx,0
mov cx,32
s: mov al,[bx]
cmp al,32
jb s0 ;填空处
cmp al,128
ja s0 ;填空处
inc dx
s0: inc bx
loop s
...
assume cs:code
code segment
start: mov ax,0f000h
mov ds,ax
mov bx,0
mov dx,0
mov cx,32
s: mov al,[bx]
cmp al,32
jb s0 ;填空处
cmp al,128
ja s0 ;填空处
inc dx
s0: inc bx
loop s
...
阅读全文 |
评论次数(1) |
浏览次数(1148) |
所属类型(汇编作业)
[2007-11-26 16:51] 标志寄存器~小结~
1:标志寄存器的作用:
(1) 用来存储相关指令的某些执行结果。
(2) 用来为CPU执行相关指令提供行为依据。
(3) 用来控制CPU的相关工作方式。
8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)
Flag寄存器是按位起作用的。
2:第0位是CF,进位标志位,是对无符号运算有意义的标志位
第2位是PF,奇偶标志位
第4位是AF,辅助进位标志位
第6位是ZF,零标志位
第7位是SF,符号标志位
第8位是TF,步进标志位,当为1时,使处理器执行单步操作。
第9位是IF,陷阱标志位,当为1时,容许响应中断,否则关中断。
第10位是DF,...
(1) 用来存储相关指令的某些执行结果。
(2) 用来为CPU执行相关指令提供行为依据。
(3) 用来控制CPU的相关工作方式。
8086CPU的标志寄存器有16位,其中存储的信息通常被称为程序状态字(PSW)
Flag寄存器是按位起作用的。
2:第0位是CF,进位标志位,是对无符号运算有意义的标志位
第2位是PF,奇偶标志位
第4位是AF,辅助进位标志位
第6位是ZF,零标志位
第7位是SF,符号标志位
第8位是TF,步进标志位,当为1时,使处理器执行单步操作。
第9位是IF,陷阱标志位,当为1时,容许响应中断,否则关中断。
第10位是DF,...
阅读全文 |
评论次数(2) |
浏览次数(1577) |
所属类型(汇编作业)
[2007-11-26 12:14] 检测点 11.1&11.2检测点&小结
检测点 11.1
sub al,al ZF=1 PF=1 SF=0
mov al,1 ZF=1 PF=1 SF=0
push ax ZF=1 PF=1 SF=0
pop bx ZF=1 PF=1 SF=0
add al,bl ZF=0 PF=0 SF=0
add al,10 ZF=0 PF=1 SF=0
mul al ZF=0 PF=1 SF=1
11.2检测点
sub al,al CF=0 OF=0 SF=0 ZF=1 PF=1 ...
sub al,al ZF=1 PF=1 SF=0
mov al,1 ZF=1 PF=1 SF=0
push ax ZF=1 PF=1 SF=0
pop bx ZF=1 PF=1 SF=0
add al,bl ZF=0 PF=0 SF=0
add al,10 ZF=0 PF=1 SF=0
mul al ZF=0 PF=1 SF=1
11.2检测点
sub al,al CF=0 OF=0 SF=0 ZF=1 PF=1 ...
阅读全文 |
评论次数(1) |
浏览次数(1008) |
所属类型(汇编作业)
[2007-11-24 12:26]
第二个子程序:解决除法溢出的问题
assume cs:code
data segment
dw 8 dup (0)
data ends
code segment
start:mov ax,data
mov ds,ax
mov si,0
mov ax,4240h ;被除数低16位
mov dx,000fh ;被除数高16位
mov cx,0ah ;除数
call divdw ;调用子程序divdw
mov ax,4c00h
...
data segment
dw 8 dup (0)
data ends
code segment
start:mov ax,data
mov ds,ax
mov si,0
mov ax,4240h ;被除数低16位
mov dx,000fh ;被除数高16位
mov cx,0ah ;除数
call divdw ;调用子程序divdw
mov ax,4c00h
...
阅读全文 |
评论次数(1) |
浏览次数(986) |
所属类型(汇编作业)
[2007-11-23 21:13] 在学习除法指令div时遇到的问题:
书P196,一个程序段如下:
mov bh,1
mov ax,1000
div bh
书上说是进行的8位除法,结果的商为1000,而1000在ah中存放。这里说错了吧,1000是在al中存放吧。
还有书P158,一个程序段如下:mov ax,1001
mov bl,100
div bl
也是进行的是8位除法,执行后(al)=0AH(即10),(dx)=1(余数为1),好象也不对吧,除数是8位的,AH不应该存储除法操作的余数吗? ...
mov bh,1
mov ax,1000
div bh
书上说是进行的8位除法,结果的商为1000,而1000在ah中存放。这里说错了吧,1000是在al中存放吧。
还有书P158,一个程序段如下:mov ax,1001
mov bl,100
div bl
也是进行的是8位除法,执行后(al)=0AH(即10),(dx)=1(余数为1),好象也不对吧,除数是8位的,AH不应该存储除法操作的余数吗? ...
阅读全文 |
评论次数(1) |
浏览次数(423) |
所属类型(汇编作业)
[2007-11-17 18:41] 什么是C程序?
C语言程序是一个或者多个函数组成的。每一个C程序都必须包含一个名为main ()的函数,因为当程序开始时要调用该函数。一个简单的函数结构如下:函数头后面紧跟着花括弧,后面是构成函数体的语句,然后是起终止作用的结束花括弧。
每个C语句都大一个针对计算机的指令,并以一个分号作为结束标志。声明语句为变量指定一个名字并指明该变量中存储的数据类型。变量名是标识符的例子。赋值语句把值赋给变量,或者更一般地说,是把值赋给存储区域。函数调用语句会导致所指定函数的执行。当被函数执行完毕之后,程序会返回到函数调用之后的语句继续执行。
Printf()函数用于输出语句和变量的值。
一门语言的语法是一套...
每个C语句都大一个针对计算机的指令,并以一个分号作为结束标志。声明语句为变量指定一个名字并指明该变量中存储的数据类型。变量名是标识符的例子。赋值语句把值赋给变量,或者更一般地说,是把值赋给存储区域。函数调用语句会导致所指定函数的执行。当被函数执行完毕之后,程序会返回到函数调用之后的语句继续执行。
Printf()函数用于输出语句和变量的值。
一门语言的语法是一套...
阅读全文 |
评论次数(1) |
浏览次数(392) |
所属类型(汇编作业)
[2007-11-16 22:15] 子程序(1)的分析与不解
问题1:先看了一下所给的部分程序,mov dh,8 mov dl,3看到这两句指令的第一想法就是把行与列放在了dx中,没有想到在子程序中把他们转化为显存中的地址,也就更不会想到用mul这个指令了,想了好久,也转不过弯来,在这一点被卡住了。其实下面的实现绿色字符串很容易,后来,看了提示和别的博客才感悟到。呵呵…..有点迟钝了。他们只是标号,并不是我要的地址。所以我要做的就是转化。如下:mov ax,0b800h
mov es,ax ;定义显存段起始段地址
mov al,160
mul dh ;算出行与显存地址...
mov es,ax ;定义显存段起始段地址
mov al,160
mul dh ;算出行与显存地址...
阅读全文 |
评论次数(4) |
浏览次数(448) |
所属类型(汇编作业)