Comportamento incomprensibile di ASC(x)
Posted: 07 Nov 2021, 16:19
Eccomi con un nuovo problema incomprensibile che mi sta facendo morire.
Sto simulando queste poche righe di codice.
Tutto funziona bene fino al carattere ASCII 126 mentre dal carattere 127 tutto diventa incomprensibile. Ad esempio con i caratteri 127, 128 e 129 ASC(carattere) dà rispettivamente 166, 199 e 252.
Inserisco i caratteri tramite tastierino numerico + ALT.
Se invece di inserire i caratteri utilizzando la tastiera, li inserisco tramite codice - es. A = CHR (130) print ASC (A) - il risultato stampato è corretto.
Risultati ottenuti con il compilatore 2.0.8.4 build 2.0.8.4.001.
Che cosa sto facendo di sbagliato?
Soluzioni?
Grazie in anticipo
Pier
Sto simulando queste poche righe di codice.
- Code: Select all
$regfile = "m328pdef.dat"
$crystal = 16000000
$baud = 9600
$hwstack = 32
$swstack = 10
$framesize = 40
Dim Nm As String * 1
Config Serialin = Buffered , Size = 50
portd.0 = 1 'pullup Rx
Enable Interrupts
do
If Ischarwaiting() = 1 Then
Nm = inkey()
print asc(Nm)
end if
loop
End
Tutto funziona bene fino al carattere ASCII 126 mentre dal carattere 127 tutto diventa incomprensibile. Ad esempio con i caratteri 127, 128 e 129 ASC(carattere) dà rispettivamente 166, 199 e 252.
Inserisco i caratteri tramite tastierino numerico + ALT.
Se invece di inserire i caratteri utilizzando la tastiera, li inserisco tramite codice - es. A = CHR (130) print ASC (A) - il risultato stampato è corretto.
Risultati ottenuti con il compilatore 2.0.8.4 build 2.0.8.4.001.
Che cosa sto facendo di sbagliato?
Soluzioni?
Grazie in anticipo
Pier