Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.os.msdos.programmer > #3223

Re: scan for a-z

From Herbert Kleebauer <klee@unibwm.de>
Newsgroups comp.os.msdos.programmer
Subject Re: scan for a-z
Date 2019-04-02 20:17 +0200
Organization Aioe.org NNTP Server
Message-ID <q808vp$1oba$1@gioia.aioe.org> (permalink)
References <ja45aepid2pe3kgka19s1011br325ph479@4ax.com> <q7ve4k$1ms0$1@gioia.aioe.org> <XnsAA259D58249D8admin127001@144.76.35.198>

Show all headers | View raw


On 02.04.2019 16:27, Kerr-Mudd,John wrote:

>> In order to convert lowercase to uppercase you don't need
>> to know if it is lowercase. Just use a 256 byte translation
>> table to replace any input byte by the proper output byte.
>> 
>> 
> AND byte [ptrreg],0xDF


And what happens to characters which have bit 5 set, but
are nor lowercase letters?

But a XLAT instruction should do the job:


XLAT/XLATB ── Table Look-up Translation

D7    XLAT m8    5     Set AL to memory byte DS:[(E)BX + unsigned AL]
D7    XLATB      5     Set AL to memory byte DS:[(E)BX + unsigned AL]


Operation

IF AddressSize = 16
THEN
    AL . (BX + ZeroExtend(AL))
ELSE (* AddressSize = 32 *)
    AL . (EBX + ZeroExtend(AL));
FI;

Description

XLAT changes the AL register from the table index to the table entry. AL
should be the unsigned index into a table addressed by DS:BX (for an
address-size attribute of 16 bits) or DS:EBX (for an address-size attribute
of 32 bits).

The operand to XLAT allows for the possibility of a segment override. XLAT
uses the contents of BX even if they differ from the offset of the operand.
The offset of the operand should have been moved intoBX/EBX with a previous
instruction.

The no-operand form, XLATB, can be used if the BX/EBX table will always
reside in the DS segment.

Flags Affected

None

Back to comp.os.msdos.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

scan for a-z T. Ment <t.ment@protocol.invalid> - 2019-04-01 22:43 +0000
  Re: scan for a-z "Alexei A. Frounze" <alexfrunews@gmail.com> - 2019-04-01 21:04 -0700
    Re: scan for a-z T. Ment <t.ment@protocol.invalid> - 2019-04-02 16:31 +0000
    Re: scan for a-z Steve Nickolas <usotsuki@buric.co> - 2019-04-02 12:40 -0400
      Re: scan for a-z T. Ment <t.ment@protocol.invalid> - 2019-04-02 16:48 +0000
        Re: scan for a-z Rod Pemberton <invalid@lkntrgzxc.com> - 2019-04-02 18:03 -0400
        Re: scan for a-z Peter 'Shaggy' Haywood <phaywood@alphalink.com.au> - 2019-04-17 23:56 +1000
  Re: scan for a-z "R.Wieser" <address@not.available> - 2019-04-02 09:00 +0200
    Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-02 09:06 +0000
      Re: scan for a-z "R.Wieser" <address@not.available> - 2019-04-02 14:37 +0200
  Re: scan for a-z Herbert Kleebauer <klee@unibwm.de> - 2019-04-02 12:39 +0200
    Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-02 14:27 +0000
      Re: scan for a-z Herbert Kleebauer <klee@unibwm.de> - 2019-04-02 20:17 +0200
        Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-02 19:16 +0000
        Re: scan for a-z wolfgang kern <nowhere@never.at> - 2019-04-03 16:13 +0200
          Re: scan for a-z T. Ment <t.ment@protocol.invalid> - 2019-04-03 19:36 +0000
          Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-04 14:43 +0000
            Re: scan for a-z wolfgang kern <nowhere@never.at> - 2019-04-05 00:41 +0200
  Re: scan for a-z JJ <jj4public@vfemail.net> - 2019-04-02 19:53 +0700
  Re: scan for a-z Mateusz Viste <mateusz@cant.remember> - 2019-04-02 13:00 +0000
    Re: scan for a-z T. Ment <t.ment@protocol.invalid> - 2019-04-02 16:44 +0000
  Re: scan for a-z Rod Pemberton <invalid@lkntrgzxc.com> - 2019-04-02 18:04 -0400
    Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-03 09:31 +0000
      Re: scan for a-z "Alexei A. Frounze" <alexfrunews@gmail.com> - 2019-04-03 02:48 -0700
        Re: scan for a-z "Kerr-Mudd,John" <notsaying@invalid.org> - 2019-04-03 12:25 +0000
          Re: scan for a-z Rod Pemberton <invalid@lkntrgzxc.com> - 2019-04-03 18:05 -0400
      Re: scan for a-z Bogus@Embarq.com (Steve) - 2019-04-03 11:58 +0000
  Re: scan for a-z wolfgang kern <nowhere@never.at> - 2019-04-03 15:58 +0200
    Re: scan for a-z wolfgang kern <nowhere@never.at> - 2019-04-03 16:05 +0200
    Re: scan for a-z "R.Wieser" <address@not.available> - 2019-04-03 17:40 +0200
    Re: scan for a-z "R.Wieser" <address@not.available> - 2019-04-03 17:47 +0200

csiph-web