Ich weiß nicht genau, was Skalar bedeutet, aber ich versuche zu sehen, ob ich richtig darüber nachdenke. Bezieht sich Skalar auf Willkür, bei der der Datentyp ein beliebiger Typ sein kann, oder kann ein System nicht wissen, um welchen Datentyp es sich handelt?
terminology
Ryan M
quelle
quelle
Antworten:
Der Begriff "Skalar" stammt aus der linearen Algebra und wird verwendet, um eine einzelne Zahl von einem Vektor oder einer Matrix zu unterscheiden. Die Bedeutung beim Rechnen ist ähnlich. Es unterscheidet einen einzelnen Wert wie eine Ganzzahl oder ein Gleitkomma von einer Datenstruktur wie einem Array. Diese Unterscheidung ist in Perl sehr ausgeprägt, wo das
$
Sigill (das einem 's' ähnelt) verwendet wird, um eine skalare Variable zu bezeichnen, und ein@
Sigill (das einem 'a' ähnelt) ein Array bezeichnet. Es hat nichts mit dem Typ des Elements selbst zu tun. Dies kann eine Zahl, ein Zeichen, eine Zeichenfolge oder ein Objekt sein. Was zählt, um als Skalar bezeichnet zu werden, ist, dass es einen von ihnen gibt.quelle
int
oderchar
, nicht strukturierte Typen wie Objekte (auch wenn es nur eine).$variable
. Siehe die Wikipedia-Seite .Ein Skalar ist einfach eine Variable, die einen individuellen Wert enthält . Für die Zwecke dieser Diskussion nehmen wir an, dass ein Skalar eine einzelne Zahl ist und keine Ansammlung von Zahlen.
Zum Beispiel das Ergebnis einer SQL-Abfrage, die eine Zahl anstelle eines Tupels zurückgibt, sowie die ExecuteScalar () -Methode in der SQLCommand-Klasse , die den Wert der ersten Spalte der ersten Zeile in der von der Abfrage zurückgegebenen Ergebnismenge zurückgibt. Es wird normalerweise verwendet, um einen aggregierten Wert wie COUNT oder AVERAGE, die ID eines neuen Datensatzes oder die Anzahl der von einer Abfrage verarbeiteten Datensätze abzurufen.
quelle
Eine ergänzende Anmerkung zu Karl Bielefeldts großartiger Antwort:
Eine einfache Art, darüber nachzudenken, lautet: "Kann das auf einer Skala liegen?"
Eine ganze Zahl kann auf einer Skala liegen.
Eine Ganzzahl mit fester Größe kann auf einer Skala liegen, z. B. von -2147483648 bis 2147483647.
Eine reelle Zahl kann auf einer Skala liegen.
Ein Zeichen, ein Boolescher Wert oder eine Dezimalstelle mit fester Genauigkeit kann sich alle auf einer Skala befinden. Sogar eine Zeichenfolge kann sich auf einer Skala befinden (wir verwenden diese beim Sortieren).
Daher "Skalar".
Eine Datenbankzeile kann nicht skaliert werden. Eine komplexe Zahl kann nicht auf einer Skala liegen. Ein Objekt, das eine E-Mail-Nachricht darstellt, kann sich nicht auf einer Skala befinden. Ein Array, ein Vektor oder eine Matrix kann sich nicht auf einer Skala befinden.
quelle
Wie es bei vielen Begriffen in der Informatik der Fall ist; Der Ursprung des Wortes bezieht sich auf mehr physikalische Eigenschaften. Der Begriff Skalar ist in der Datenverarbeitung relativ alt. Seine Definition ist heutzutage weniger streng. Wenn Sie Daten im Computerspeicher speichern, können diese Daten entweder in eine Adresse (1 Byte *) passen oder nicht. Wenn es so war, wurde es Skalar genannt, wenn es nicht so war, wurde es Composite genannt. Hauptsächlich, weil die CPUs jeweils nur eine Adresse / ein Datenelement (= 1 Byte) verarbeiten konnten. Wie von Karl Bielefeldt angegeben; Der Begriff wurde in der Tat aus der Algebra übernommen.
Wir bezeichnen eine Zeichenfolge als Zeichenfolge, da es sich um eine Zeichenfolge handelt. Ein Zeichen ist / war ein Skalar, während eine Zeichenfolge ein zusammengesetztes Zeichen ist / war. Das Speichern von 1 Datenelement (einem Datum) in mehreren Adressen verwischte die Linie etwas. Stellen Sie sich das folgendermaßen vor: Wenn eine CPU ein Datum in einem Befehl verarbeiten konnte, war es skalar.
Heutzutage ist ein Skalar ein beliebiger Singularwert, und was ein Singularwert ist, kann in verschiedenen Sprachen unterschiedlich definiert sein. Ganzzahlen, Fließkommazahlen, Zeichenfolgen, Boolesche Werte und Aufzählungen werden heutzutage größtenteils als Skalare betrachtet. Arrays, Listen, Bäume, Objekte usw. sind es nicht.
(* Ich sage 1 Byte, um die Dinge übersichtlich zu halten, aber technisch gesehen spreche ich von den Tagen, als 6 Bits häufiger zum Beispiel auf Lochkarten und später auf Magnetstreifen verwendet wurden.)
Haftungsausschluss: Ich kann im Internet keine Hinweise darauf finden, ich habe Informationen in der Schule und aus alten Büchern erhalten, darunter (glaube ich): Mathematische Tabellen und andere Hilfsmittel zur Berechnung von 1944. Davon abgesehen ist mein Gedächtnis Nicht mehr das, was es früher war. Wenn also jemand meine Antwort ändern / bestätigen oder ablehnen kann, wäre es nett.
quelle
Ein Skalar ist ein einfacher einzelner numerischer Wert (wie in 1, 2/3, 3.14 usw.), normalerweise eine Ganzzahl, ein fester Punkt oder ein Gleitkomma (einfach oder doppelt), im Gegensatz zu einem Array, einer Struktur, einem Objekt oder einem komplexen Vektor ( Real plus Imaginär oder Magnitude plus Winkelkomponenten), höherdimensionaler Vektor oder Matrixdatentyp (usw.), der mehr als einen einzelnen numerischen Wert enthält.
Es ist jedoch zu beachten, dass ein großer, sehr komplexer Datentyp der Art, der auch abgeflacht und in 8-Bit-Bytes des Computerspeichers dargestellt werden kann, auch als eine einzige sehr lange / große binäre Skalarzahl dargestellt werden kann. Turing verwendete diese Technik, um ganze Computerprogramme als eine einzige skalare Zahl darzustellen.
quelle
Ein Skalar ist eine Variable, die einen individuellen Wert enthält.
Zum Beispiel:
Skalare Variable : Angenommen, Sie möchten die Namen verschiedener Schüler als eine Reihe von Variablen darstellen. Jede der einzelnen Variablen ist eine skalare Variable wie folgt
Skalarfunktionen : SQL-Skalarfunktionen geben basierend auf dem Eingabewert einen einzelnen Wert zurück.
quelle