Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > de.comp.lang.python > #6227
| Path | csiph.com!fu-berlin.de!uni-berlin.de!not-for-mail |
|---|---|
| From | "Wolli Buechel" <wjb131@web.de> |
| Newsgroups | de.comp.lang.python |
| Subject | [Python-de] Re: Fwd: Codepage-Methode vs. UTF8 |
| Date | Sat, 17 Aug 2024 10:13:27 -0000 |
| Lines | 152 |
| Message-ID | <172388960725.28933.12839032272469976983@mail.python.org> (permalink) |
| References | <33D07169-A4D4-4CE9-822E-B0D81A823019@multi-matrix.de> |
| Mime-Version | 1.0 |
| Content-Type | text/plain; charset="utf-8" |
| Content-Transfer-Encoding | 8bit |
| X-Trace | news.uni-berlin.de uZLaMnxga4JDk0P1A3s8NgTJruocvW4jztgVyFX1yLhQ== |
| Cancel-Lock | sha1:7IbrIGB4PyXiNuq+Dd1Z6aK0dQ0= sha256:r3SticYOmL1JrGHPkaL6Qsxoch5S38QQ29m2hoELK/w= |
| Authentication-Results | mail.python.org; dkim=none reason="no signature"; dkim-adsp=none (unprotected policy); dkim-atps=neutral |
| In-Reply-To | <33D07169-A4D4-4CE9-822E-B0D81A823019@multi-matrix.de> |
| User-Agent | HyperKitty on https://mail.python.org/ |
| Message-ID-Hash | SUQLNOV5H6S6HJRVLUMI7IXFHWDWKDNA |
| X-Message-ID-Hash | SUQLNOV5H6S6HJRVLUMI7IXFHWDWKDNA |
| X-MailFrom | wjb131@web.de |
| X-Mailman-Rule-Misses | dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-python-de.python.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header |
| X-Mailman-Version | 3.3.10b1 |
| Precedence | list |
| List-Id | Die Deutsche Python Mailingliste <python-de.python.org> |
| Archived-At | <https://mail.python.org/archives/list/python-de@python.org/message/SUQLNOV5H6S6HJRVLUMI7IXFHWDWKDNA/> |
| List-Archive | <https://mail.python.org/archives/list/python-de@python.org/> |
| List-Help | <mailto:python-de-request@python.org?subject=help> |
| List-Owner | <mailto:python-de-owner@python.org> |
| List-Post | <mailto:python-de@python.org> |
| List-Subscribe | <mailto:python-de-join@python.org> |
| List-Unsubscribe | <mailto:python-de-leave@python.org> |
| Xref | csiph.com de.comp.lang.python:6227 |
Show key headers only | View raw
Hallo Herr Schnoor,
> was Sie da aufzeigen, mag ja interessant sein, hat
> aber mit den <index>Ziffern nichts zu tun.
> Für <index>Ziffern gelten weder “Bits” noch ”Bytes”,
> sondern ausschließlich die Position der Ziffer im String.
> (Positionswert).
Diese Bit- und Byte-Abstinenz besagter Index-Ziffern haben Sie danach
in einer privaten Mail demonstriert anhand von 8 Exemplaren mit CPM-Output-Gedöns
(leider wieder aus unbegreiflichen Gründen nicht in Worten
begründet oder erläutert), und zwar so:
=============== ZITAT-ANFANG ================
hier kommt meine Aufstellung der <index>Ziffern:
chose mode > S
Basis: 4096
insert system number: E
E
result: 40
insert system number: 10
10
result: 4096
4
insert system number: 1E
1E
result: 4136
4
Die <index>Ziffer "1E" steht in der Position [4096 + 40 = 4136].
insert system number: 20
20
result: 8192
4
insert system number: 2E
2E
result: 8232
4
Die <index>Ziffer "2E" steht in der Position [8192 + 40 = 8232]
insert system number: 30
30
result: 12288
5
insert system number: 3E
3E
result: 12328
5
Die <index>Ziffer "3E" steht in der Position [12288 + 40 = 12328]
insert system number: EE
EE
result: 163880
6
insert system number: E0
E0
result: 163840
6
Die <index>Ziffer "E0" steht in der Position [13880- 40 = 163840]
insert system number: KK0
KK0
result: 771940352
9
insert system number: KKE
KKE
result: 771940392
Das sollte doch genügen.
=============== ZITAT-ENDE =============
Da wird lediglich jede Indexzahl in eine äquivalente Dezimalzahl unmgewandelt.
Dies zeigt auch der mir zugesandte Programmcode der Datei Zahlensysteme.py:
==================================================================
elif modus == "S": # ----------------System -> Dezimal -----------------------
system = basis
system = int(system)
print()
print()
syszahl = input(" Eingabe System-Zahl: ")
print("",syszahl)
basis = system
ergebnis = nachdez(basis,syszahl) ## Konvertierung der 4096-er Zahl <syszahl> in ein dezimales Äquivalent
print(" Ergebnis: ",ergebnis)
ergebnis = str(ergebnis)
print(" ",len(ergebnis))
print()
========================================================
Diesen Code habe ich komprimiert und etwas erweitert, um zu zeigen,
daß bei ALLEN beteiligten Variablen (index, syszahl, ergebnis) ÜBERRASCHENDERWEISE Bits und Bytes herauszukitzeln sind:
######################
from CPZiffernS import ziffern
from tools24 import *
basis = len(ziffern)
print(len(ziffern) == len(set(ziffern)))
print("Basis : %d" % basis)
# modus == "S": # System -> Dezimal
index = "E 10 1E 20 2E 30 3E EE E0 KK0 KKE".split()
for idx in index:
index10 = nachdez(basis, idx, ziffern)
numZeichen = len(idx)
numBytes = len(bytes(idx, 'utf8'))
Bytes = [ f'{x:08b}' for x in bytes(idx, 'utf8') ]
print("index : %9s\t(%d Zeichen ; %d Byte : %s)" % (idx, numZeichen, numBytes, Bytes))
print("index10 : %9s\t(%d Zeichen ; %d Byte)\n" % (index10, len(str(index10)), len(str(index10))))
==================================================================================
mit folgendem Ergebnis:
Basis : 4096
index : E (1 Zeichen ; 1 Byte = ['01000101'])
index10 : 40 (2 Zeichen ; 2 Byte)
index : 10 (2 Zeichen ; 2 Byte = ['00110001', '00110000'])
index10 : 4096 (4 Zeichen ; 4 Byte)
index : 1E (2 Zeichen ; 2 Byte = ['00110001', '01000101'])
index10 : 4136 (4 Zeichen ; 4 Byte)
index : 20 (2 Zeichen ; 2 Byte = ['00110010', '00110000'])
index10 : 8192 (4 Zeichen ; 4 Byte)
index : 2E (2 Zeichen ; 2 Byte = ['00110010', '01000101'])
index10 : 8232 (4 Zeichen ; 4 Byte)
index : 30 (2 Zeichen ; 2 Byte = ['00110011', '00110000'])
index10 : 12288 (5 Zeichen ; 5 Byte)
index : 3E (2 Zeichen ; 2 Byte = ['00110011', '01000101'])
index10 : 12328 (5 Zeichen ; 5 Byte)
index : EE (2 Zeichen ; 2 Byte = ['01000101', '01000101'])
index10 : 163880 (6 Zeichen ; 6 Byte)
index : E0 (2 Zeichen ; 2 Byte = ['01000101', '00110000'])
index10 : 163840 (6 Zeichen ; 6 Byte)
index : KK0 (3 Zeichen ; 3 Byte = ['01001011', '01001011', '00110000'])
index10 : 771940352 (9 Zeichen ; 9 Byte)
index : KKE (3 Zeichen ; 3 Byte = ['01001011', '01001011', '01000101'])
index10 : 771940392 (9 Zeichen ; 9 Byte)
Back to de.comp.lang.python | Previous | Next | Find similar
[Python-de] Re: Fwd: Codepage-Methode vs. UTF8 "Wolli Buechel" <wjb131@web.de> - 2024-08-17 10:13 +0000
csiph-web