linha0 发表于 2011-7-14 22:07:34

实验11不是很给力的说!

assume cs:code

data segment
        db "Beginner's All-purpose Symbolic Instruction Code.",0
data ends

code segment
begin:        mov ax,data
                mov ds,ax
                mov si,0
                call letterc
               
                mov ax,4c00h
                int 21h
               
letterc:
                mov ah,0
                mov al,
                mov di,si;记录当前字符的位置
                inc si
                mov cx,ax
                jcxz let_ok;遇0结束
               
                ;条件判断,不在 a--z 范围的跳转
                cmp ax,97
                jb letterc
                cmp ax,122
                ja letterc
               
                and al,11011111b;转为大写字母
                mov ,al
                jmp short letterc
Let_ok:               
ret
code ends
end begin

有谁能讲解一下检测点11.4吗?

丁丁 发表于 2011-7-14 23:58:02

帮你顶顶吧

wangwum 发表于 2011-7-15 11:21:36

重点在mov ax,0fff0h add,ax,0010两句,会使pf,cf,zf置一

linha0 发表于 2011-7-15 12:52:50

wangwum 发表于 2011-7-15 11:21 static/image/common/back.gif
重点在mov ax,0fff0h add,ax,0010两句,会使pf,cf,zf置一

这个才是最容易理解的

为什么AX不等于0??

你看一下我这道测试用指令.

我挖 发表于 2013-7-2 22:52:39

看帖就要回帖支持下

fishmo 发表于 2013-7-2 23:14:35

看看老帖,支持下

我挖 发表于 2013-7-3 17:20:50

看看学习学习

Cocol 发表于 2013-7-3 19:06:25

看看,回复支持下
页: [1]
查看完整版本: 实验11不是很给力的说!