当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

    摘要: 用overlapped方式打开一个串口,然后用overlapped方式用readfile与writefile来进行读写,并且传入一个lpoverlapped指针,同时,含有一个event对象,可是却不知道这个event从什么时候能被激发,而且应该怎样处理。 我看到和很多程序中,都是用的无名的方式来赋值,并且没有做任何对它激活与激活的处理,这一点让我不是很明白,请大家给点提示! 是不是不用多......
 ·超级超级难题    »显示摘要«
    摘要: 怎样才能监视目录、文件?(不是一般的监视) 我想监视一个目录,如果用户没有权限就不能新建或者删除,也就时说要在新建或删除前得到消息而不是新建或删除后得到消息!! 一般的监视目录、文件都是在新建或删除以后才得到消息,往往得到消息后为时已完(因为其实文件已经被创建或被删除),不知道怎么搞? 另外,如果用户没有权限复制一个文件或文件夹就要阻止用户复制文件,怎样才能在用户复制文件时得到消息? 谢谢......


实在赶不上,只得到这里问了,关于几个基础的汇编问题,请帮我看看

1、一个32位的有符号数防在DX:AX中,写出求其补码的程序片段(2种方法)!  
  2、写出执行以下指令的序列,其中X,Y,Z,R都是16位带符号数地址!  
      Z<-W+(Z-X)  
      Z<-(W+X)/(Y+6)   R<-余数  
  3、写一求地址F000:0000H开始的64K字节内存区域的检验和并转换为16近制数的ASCII码!  
   
  //注:用8086/8088的汇编指令!

NO.1   作者: comeonstuding

ax不能用于寄存器间接寻址方式  
 

NO.2   作者: hquwl

帮你up一下。

NO.3   作者: BIOS_cpu

1.与FFH求异或后加1  
  2.直接用FFH减去它

NO.4   作者: wyd95968

1.  
  一个正数的补码就是原码;一个负数的补码就是它的无符号数原码的反码加1。  
  对于一个已经存放在DX:AX中的数来说,它的存在就是补码。还求什么?  
  1)方法一:直接以16进制的形式显示。  
  2)方法二:  
                  PUSH     AX  
                  PUSH     DX  
                  POP       AX  
                  NEG       AX       ;求补  
                  NEG       AX       ;再求补  
                  MOV       DX,AX  
                  POP       AX  
                  NEG       AX  
                  NEG       AX          
   
  2.  
  1)  
                  MOV       AX,Z  
                  CLC  
                  SBB       AX,X  
                  SBB       AX,W  
                  MOV       Z,AX  
  2)  
                  MOV       AX,6  
                  CLC  
                  ADC       AX,Y  
                  MOV       BX,AX  
                  PUSH     BX  
                  MOV       AX,W  
                  CLC  
                  ADC       AX,X  
                  MOV       BX,AX  
                  MOV       AX,0  
                  SBB       AX,BX  
                  CWD  
                  POP       BX  
                  IDIV     BX  
                  MOV       Z,AX  
                  MOV       R,DX  
   
  3.  
  CHANGE     PROC     NEAR  
              push     dx  
              push     cx  
              push     ax  
              mov       cx,4  
              shr       al,cl  
              cmp       al,0ah  
              jb         sh1  
              add       al,07h  
  sh1:     add       al,30h  
              mov       dh,al  
              pop       ax  
              and       al,0fh  
              cmp       al,0ah  
              jb         sh2  
              add       al,07h  
  sh2:     add       al,30h  
              mov       dl,al  
              mov       ax,dx  
              pop       cx  
              pop       dx  
              ret  
  CHANGE     ENDP  
  START:     MOV       AX,0F000H  
                  MOV       DS,AX  
                  MOV       AX,0  
                  MOV       SI,AX  
                  MOV       CX,AX             ;64k长度  
    REPADD:ADD       AX,[SI]         ;校验和.如果是类加和就还得处理进位.  
                  INC       SI  
                  LOOP     REPADD  
                  PUSH     AX  
                  MOV       AL,AH  
                  CALL     CHANGE  
                  MOV       DX,AX  
                  POP       AX  
                  CALL     CHANGE  
  转换出来的结果以16进制的ASCII码形式存放在DX:AX里。


    摘要: 小心点哦!不要因为抢分而踩到别人的脚啊! ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE