Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Assembly Language > Re: All is righ...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 14 of 17 Topic 4954 of 5160
Post > Topic >>

Re: All is right !

by "almas" <almes@[EMAIL PROTECTED] > Apr 20, 2008 at 11:11 AM

Hi Wolfgang ,  hello world.

Sure, at the last line "you are a comment"
But i did not found any instruction called Wolfgang  :-)

Yes, i coult try to igore errors, so i can shutdown some bytes.
May be, i will do it, actualy i prefer that the COM file can detect errors

a run correctly

...... / ....

Now, i'm working on an other goal.
The aim is  if i have two ascii
between 22h and 2Fh  ( i can identify it )
and if the next ascii have same value, i remove it into "~"

Example :  ((  become  ~ ~
              but ( *  stay    (*
       ###      become    ~ ~ ~

I try .... and have troubles
If i put     ##(*)    i obtain   ~##(**
  or i have in others version    ~ ~ ~*)

I fact the next byte keep the value of the byte before.

The next step : destroy all the ~

I spend a large part of saturday  and obtain "funny" ; stranges results


"Wolfgang Kern" <nowhere@[EMAIL PROTECTED]
> a écrit dans le message de news: 
fues69$4pc$1@[EMAIL PROTECTED]
>
> almas wrote:
>
>> Hi everybody    hello world
>> Below, the solution of Wolfgang.... i again reduce the size of file. 
>> now
>> 55 bytes.
>>
>> Regards  Almas
>>
>> mov si,0082h ;;;;;;  mov esi,0082h ; I assume space before parameters
>>  ; cmp byte [esi-2],0   ; a few buyes more, but perhaps useful
>>  ; jz error             ;if commandline is empty
>>  lodsw           ;get both bytes at once
>>  call convert    ;modify AL   set carry/NC on error/GOOD
>>  jc error
>>  shl al,4
>>  xchg al,ah      ;save first and use second yet
>>  call convert    ;call the same again
>>  jc error
>>  or al,ah
>>  mov offset hexa,AL
>> ;  jmp short error   ;  display_quit
>>
>>  error:
>>  mov dx, offset errtxt   ; jmp short error_quit
>> ;   ;;;;;;;       display_quit:  ;  mov dx, offset txt
>>  error_quit:
>>   mov AH,09
>>   int 21h
>> ;;;;;;  ret             ;it will work, even I'd always use:
>> ;;;;;;    The RET of the call will be used like an INT 20h
>> ;;;;;  If  it go in convert routine,  the only output is RET
>
> Ok, even this is a rare seen method for saving on one byte  :)
> always comment things like this in deep detail for yourself
> in case you may look at it again after some years.
>
>>  convert:
>>      ; cmp al,30h  ;I'd put this in  ; jc oh_no  ;jc == jb
>>   cmp al,3ah
>>   jc num
>>   cmp al,41h
>>   jc oh_no
>>   cmp al,47h  ;
>>   cmc           ;invert the carry-bit (error if NoCarry >46h)
>>   jc oh_no
>>   sub al,07h
>>  num:
>>   sub al,30h
>>  oh_no:
>>   ret          ;the last SUB will always result in NoCarry
>>                ;while any error got a set Carry-flag now.
>
> Because you ignore input <30h anyway, you could
> shorten 'convert' and ignore 'all' wrong input
>
> convert:
> sub AL,30h
> cmp AL,0Ah
> jc done
> sub AL,07h
> done:
> ret
>
> and then you must also remove the 'jc error' lines after
> the two CALLs (saved four more bytes).
>
>>  ; mov ax,4c00h   ;because DOS will restore its stack and
>>  ; int21h         ;segment-registers on termination then.
>>
>>  errtxt db: "A2H" ,9    ; information about usage here
>>
>> ;  txt db: " "
>>  hexa db: " " ,36  ; old value  ,10,36
>> ; wolfgang
>
> Oh, I became out-commented  :)
> __
> wolfgang
>
>
>
 




 17 Posts in Topic:
All is right !
"almas" <alm  2008-04-14 23:40:35 
Re: All is right !
"almas" <alm  2008-04-15 17:15:44 
Re: All is right !
"Wolfgang Kern"  2008-04-16 17:08:30 
Re: All is right !
"almas" <alm  2008-04-16 22:07:50 
Re: All is right !
"almas" <alm  2008-04-16 23:53:23 
Re: All is right !
"almas" <alm  2008-04-16 23:28:50 
Re: All is right !
"Wolfgang Kern"  2008-04-17 12:54:06 
Re: All is right !
"almas" <alm  2008-04-17 20:52:19 
Re: All is right !
"Wolfgang Kern"  2008-04-18 23:34:34 
Re: All is right !
"Wolfgang Kern"  2008-04-19 11:10:44 
Re: All is right !
"almas" <alm  2008-04-19 16:08:24 
Re: All is right !
"almas" <alm  2008-04-19 21:00:53 
Re: All is right !
"Wolfgang Kern"  2008-04-20 09:38:04 
Re: All is right !
"almas" <alm  2008-04-20 11:11:40 
Re: All is right !
"Wolfgang Kern"  2008-04-21 09:03:12 
Re: All is right !
"almas" <alm  2008-04-21 11:19:41 
Re: All is right !
"Wolfgang Kern"  2008-04-22 12:08:32 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Oct 10 23:26:32 CDT 2008.