NOR

(not OR) – inget av två, varken A eller B – logiskt villkor som används i program­me­ring: av två på­stå­en­den måste båda vara falska. (Exempel: Är du sjukskriven? Har du egen firma? Om du svarar nejbåda frågorna har du rätt till arbets­lös­hets­ersätt­ning – annars inte.) – NOR är nega­tionen av (mot­satsen till) det logiska villkoret OR, närmare bestämt till det som i logik heter inklusiv dis­junk­tion. Inom programmering är NOR intres­sant därför att alla andra logiska villkor kan skrivas som kom­bi­na­tioner av NOR‑villkor. Villkoret NOR kan breddas till att gälla fler än två på­stå­enden. Då måste alla på­stå­endena vara falska. – Kallas på svenska också för neller. – Jäm­för med NAND. – NOR flash är en av huvud­typerna av flash­minne. Transis­to­rerna i en minnes­cell följer vill­koret NOR: det räcker med att en av tran­sis­to­rerna tar emot en hög in­gå­ende spänning (=sant) för att hela cellen ska ge ifrån sig en låg ut­gå­ende spänning (=falskt). – En sanningsvärdetabell för NOR ser ut så här:

– Inget av påståendena A och B är sant (A NOR B) :

A B A NOR B
sant sant falskt
sant falskt falskt
falskt sant falskt
falskt falskt sant

[förkortningar på N] [logik] [programmering] [ändrad 8 juni 2017]

NAND

(not AND) – inte båda, icke och – logiskt villkor som används i programmer­ing. Det är motsatsen till villkoret AND, se konjunktion. AND betyder att av två påståenden måste båda vara sanna, NAND betyder att minst ett av på­stå­endena, eller båda, måste vara falskt. – Exempel: villkoret ”regn NAND snö” godkänner ”regn men inte snö”, ”snö men inte regn”, ”varken snö eller regn”, men inte ”regn och snö”. NAND‑villkoret kan också tillämpas på fler än två på­stå­enden: ett eller flera av påståendena får då vara sanna, men inte alla. Alla andra logiska villkor kan skrivas som kombi­na­tioner av NAND‑villkor. – Jäm­för med NOR. – NAND flash memory, NAND‑minne, är en av huvud­typerna av flash­minne. Det syftar på att transis­to­rerna i minnes­cellerna är samman­kopp­lade enligt det logiska villkoret NAND: bara om alla transistorerna i cellen får en hög ingående spänning (=sant) blir det en låg ut­gå­ende spänning (=falskt). – En sannings­värde­tabell för NAND ser ut så här:

– Påståendena A och B får inte båda vara sanna” (A NAND B) :

A B A NAND B
sant sant falskt  
sant falskt sant
falskt sant sant
falskt falskt sant

[förkortningar på N] [logik] [programmering] [ändrad 14 november 2018]

konjunktion

i formell logik: motsvarighet till vardagsspråkets och. – Om man binder ihop två påståenden med OCH i formell logik och programmering måste båda vara sanna, annars anses det sammansatta påståendet som helhet vara falskt. I formell logik används tecknet ∧ för konjunktion, i programmering ofta engelska AND. Även tecknen · (upphöjd punkt) och & förekommer. – Sökvillkoret ”A AND B” tar, om man använder det i en sökmotor på webben, fram webbsidor som innehåller både A och B – men inte sidor som bara nämner ett av dem. Alltså: om man söker på ”sill AND brännvin” får man upp alla sidor som nämner både sill och brännvin (inte nödvändigtvis intill varandra), men inte sidor som nämner bara ett av orden. (Se och-förval.) – Se också det omvända, NAND. – En sanningsvärde­tabell för konjunktion ser ut så här:

– ”Båda påståendena A och B är sanna” (A∧B) :

A B A∧B
sant sant sant
sant falskt falskt
falskt sant falskt
falskt falskt falskt

[logik] [programmering] [ändrad 8 oktober 2019]

Abort, retry, ignore, fail?

– fyra alternativ som användaren brukade ställas inför i felmeddelanden i DOS:

  • abort innebar att program­­körningen skulle avbrytas omedel­bart;
  • retry an­vändes när felet be­rodde på något som användaren kunde rätta till (som att sätta i en glappande kon­takt ordentligt), varpå programkörningen kunde åter­upp­tas;
  • ignore betydde att program­körningen skulle fortsätta utan hän­syn till felet;
  • fail innebar att felet skulle rapporteras till det krånglande pro­grammet, som då antingen skulle rätta felet eller krångla igen.

– Alla fyra alternativen var inte alltid till­gängliga, och ibland var det oklart vad det var för skillnad. Skillnaden mellan Ignore och Fail var ofta otydlig, särskilt för ovana an­vändare, och de fungerade bara vid vissa typer av fel, annars kom fel­med­delandet omedel­bart upp igen. – Abort, retry, ignore, fail är också titeln på en bok om en amerikansk generation.

[fel] [programkörning] [ändrad 9 december 2019]

rekursiv

(recursive)självupprepande. Används om processer som leder till att samma process tas om igen, nu med utfallet av den första omgången som ingångsvärde. Detta är inte ett fel: resultatet av en beräkning kan till exempel användas som ingångsdata i en upprepning av samma beräkning, och detta upprepas till ett förutbestämt villkor är uppfyllt eller tills omtagningarna ger samma, eller nästan samma, resultat gång på gång (resultatet planar ut):

  1. – se rekursion;
  2. – rekursiv subrutin – subrutin som kan anropa sig själv när den körs (detta görs avsiktligt och är inget fel, till skillnad från en slinga, som beror på ett misstag);
  3. – se rekursiv resolver.

[programmering] [ändrad 22 maj 2018]

validering

(validation) – utvärdering – kontroll av att något verkligen har de egenskaper som det uppges eller förväntas ha. Validitet kan översättas med giltighet:

  1. – i systemutveckling: kontroll och bekräftelse av att pro­grammet fungerar på det sätt som beställaren väntar sig. Programmet ska faktiskt gå att använda för det ända­mål som det har byggts för. Man skiljer mellan valider­ing och verifiering. Verifiering är kontroll av att ett pro­gram är utfört enligt be­ställ­ningen, vilket inte nödvändigtvis betyder att det fungerar som kunden hade tänkt sig;
  2. – om data: validitet är att data i ett it-­system stämmer med verkliga förhållanden;
  3. – vid datainmatning och programmering är validering kontroll av att data eller programkod följer formella regler: rätt antal tecken, rätt typ av tecken, rätt ordning, rätt format. – Se också validerare;
  4. – i it-säkerhet är validering kontroll av att en användare eller ett pro­gram har rätt att utföra en viss åtgärd. (Jämför med autentisering.)

– Se också robotfilter, ibland kallat valideringskod. – Validering kan syfta både på själva kontrollen och på intygandet av att kraven är upp­fyllda.

[data] [it-säkerhet] [programmering] [språktips] [systemutveckling] [testning] [ändrad 22 december 2019]

verifiering

(verification) – i programutveckling: kontroll av att ett program är utfört i enlighet med kundens beställning. Det ska eventuellt också uppfylla andra krav, till exempel från lagstiftning och standarder. – Man skiljer mellan veri­fiering och validering. Validering är kontroll av att pro­grammet verkligen gör det som kunden väntar sig att det ska göra. Pro­grammet kan ju vara gjort enligt kundens speci­fi­ka­tioner, och alltså klara verifieringen, men ändå fungera dåligt, eftersom specifikationerna var fel­aktiga eller ofullständiga.

[programmering] [ändrad 4 januari 2019]