"Question - why do you think IBM added string specific instructions if MVC is all one ever really needs?"
The obvious reason is that K&R put the implementation of varying strings in the language specificatand IBM wanted to be able to compile efficient code from C programs. -- Shmuel (Seymour J.) Metz http://mason.gmu.edu/~smetz3 ________________________________________ From: IBM Mainframe Assembler List <ASSEMBLER-LIST@listserv.uga.edu> on behalf of Paul Raulerson <paul.rauler...@me.com> Sent: Thursday, February 8, 2018 9:03 PM To: ASSEMBLER-LIST@listserv.uga.edu Subject: Re: Strings (was : Fair comparison C vs HLASM) Sent from my iPad > On Feb 8, 2018, at 7:31 PM, Robin Vowels <robi...@dodo.com.au> wrote: > > From: "Paul Raulerson" <paul.rauler...@me.com> > Sent: Friday, February 09, 2018 9:46 AM > > >> Because they don’t have any special knowledge of strings, > > The only "special knowledge" of strings that is required is that > a string is composed of bytes. Seriously? Just haven’t to disagree there. From your point of view integers and character data and strings and floating point values are the same thing, right? Because you can move character them all the same way? > >> only untyped data. And the lengths of the data they operate on >> is fixed and defined at compile time, not at run time. > > Whether the length of a string is known at compile time or at run time > is irrelevant. > > The data is a string. And the instruction(s) that operate on them are > string instructions. > Nope, but you are as welcome to your opinion as I am to mine. :) Question - why do you think IBM added string specific instructions if MVC is all one ever really needs? >> How about taking as a definition of a string any text that SuperC will >> search for? Or a text string in ISP? > >> Obviously, what a string is and how it is defined varies from language to >> language. But usually they are not defined as binary data. Unicode excepted. > >> Just by the way, a NULL as a string terminator seems to make sense. > > And if the string _contains_ null characters? Then it isn’t a string - unless of course, the null marks the end of the string. > >> MVST (Move String), CLST (Compare String), SRST (Search String) >> are all instructs and all work with null terminated strings. >> Translate Extended is needed to work with Unicode without loosing one’s mind… > > > --- > This email has been checked for viruses by Avast antivirus software. > https://secure-web.cisco.com/13rPPIJHWHTD0_-HOUBzIxH4Ml5B4YsS1Vg74hBrIJc9q1EGQ29U_ntDiDBOausCoZqo-PyuqvUSzNOcXThWegU3NB4S9NEwVgYV-Wt9gMiUuFpnEMFEGA_q-1ixYRdohozFLwLbo-KWm1bk8uQxf1jA52v3L0aeNW7UV98kURXoF3c7iJNvCxO6n08956X1qSIrgJSVTwsFsfQhgVzWFt6xp3awOVERpzyhCvvYmZMyW_63iEtSv5B54pAYT6BM8AX11YmC8zgaEXKjkXdy9ix292zY5R0cez4o3G8pIyvIhFMaZWMY_KQpDA8Yfmn5KvLmjspAv2l9ZytMxF04UjTLqJgu62D0mLglGUYG42Zz9FhnAKr4oohRibHYlS4LiyIN_V7umjsPsm9y7XUstzqUJpYEOKGtCFFlLLenBRoURHIms4c0JBE33ZsP0L9Do/https%3A%2F%2Fwww.avast.com%2Fantivirus