|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav mayton Можно попробовать в разных компилляторах создать декодер кодовой страницы (например win1251-UTF-16) на case-switch и посмотреть как разные компилляторы соберут это. В линейный. Бинарный поиск. Или хеш-поиск. Такой декодер он может и в обычный массив перевести где индексом будет 1251. Может или переведет? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 12:44 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton petrav пропущено... Такой декодер он может и в обычный массив перевести где индексом будет 1251. Может или переведет? Можно проверить. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 12:47 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Мне щас некогда. Но я вечером сделаю тестовые сорцы. Сгенерить надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 13:13 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
https://www.sql.ru/forum/1134172/tyapnichnyy-koi-8r тут уже делали перевод кодировок оттуда: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428.
https://godbolt.org/z/h5aKza gcc 10 switch заменил на таблицу Код: plaintext 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 14:29 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Мда. Как-то раз я гуглил в интернетах что-то по Oracle. И нашёл.... свой собственный блджад вопрос 10 летней давности здесь в скруле и ответ к нему. Вот это был сюрприз мать ево. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.07.2020, 14:33 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
m_Sla, Какой страшный switch. Вот красивый, но работает идентично. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 23:42 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Интересная история. Почему ASCII <= 127 ? Почему не <= 255 ? Почему char == signed char ? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 23:50 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav Интересная история. Почему ASCII <= 127 ? https://tools.ietf.org/html/rfc1489 petrav Почему не <= 255 ? Значит мой switch компактный не содержит ошибок. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.07.2020, 23:56 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
ВсеРазумный Значит мой switch компактный не содержит ошибок. Да вы тут ни причём. Возможно пространство >127 было выделено под локальные кодировки. Но, во-первых, меня смущает такая прозорливость. Во-вторых почему char знаковый тип? Это противоречит предполагаемой прозорливости. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 00:03 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav Да вы тут ни причём. Возможно пространство >127 было выделено под локальные кодировки. Но, во-первых, меня смущает такая прозорливость. Во-вторых почему char знаковый тип? Это противоречит предполагаемой прозорливости. char такой, какой требуется по стандарту. An object declared as type char is large enough to store any member of the basic execution character set. If a member of the basic execution character set is stored in a char object, its value is guaranteed to be nonnegative. If any other character is stored in a char object, the resulting value is implemen- tation-defined but shall be within the range of values that can be represented in that type. The three types char, signed char, and unsigned char are collectively called the character types. The implementation shall define char to have the same range, representation, and behavior as either signed char or unsigned char. Знаковость у него определяется производителем компилятора. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 01:40 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
ВсеРазумный, Да. Согласен. Break там был лишний. Но тема референсного топика была не о switch, А о минимизации булевых функций. Поэтому мы не акцентировали на этом сильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 08:14 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
ВсеРазумный m_Sla, Какой страшный switch. Вот красивый, но работает идентично. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133.
а не лучше ли "а,и,е" вытащить вперёд и вообще отсортировать по частоте? default: return koi8r; это совершенно точно надо в начало ставить. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 14:20 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav Почему ASCII <= 127 ? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 19:33 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
И не надо забывать про терминалы с семибитным RS232. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.07.2020, 20:10 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Алексей Роза а не лучше ли "а,и,е" вытащить вперёд и вообще отсортировать по частоте? Нет, потому что всё равно конвертируется в массив такой switch А дальше он сам его отсортирует. Алексей Роза это совершенно точно надо в начало ставить. Без разницы где ему висеть. Он всё равно проверяет диапазон входного массива. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 00:04 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov И не надо забывать про терминалы с семибитным RS232. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 07:26 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
ВсеРазумный Нет, потому что всё равно конвертируется в массив такой switch А дальше он сам его отсортирует. в смысле "сам"? т.е. он непременно должен каждый раз перебирать 127 значений и никак это не изменить? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 11:37 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
С точки зрения теорий Шеннона английский текст обладает плонтностью 1.3 бит на символ безотносительно кодировки. Соотв если апач хорошо жмёт контент в gzip - мы можем ожидать неизменный результат и для 8 и для 16 и для 32 бит на символ. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 11:43 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton С точки зрения теорий Шеннона английский текст обладает плонтностью 1.3 бит на символ безотносительно кодировки. Соотв если апач хорошо жмёт контент в gzip - мы можем ожидать неизменный результат и для 8 и для 16 и для 32 бит на символ. Вот поэтому и нужен не utf-8, а uc-32. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 11:48 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav Вот поэтому и нужен не utf-8, а uc-32. Во-вторых, вы так и не можете понять простой вещи: составные символы останутся составными в любой кодировке. Фиксированное число бит у этой кодировки или переменное - без разницы. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:07 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
mayton Соотв если апач хорошо жмёт контент в gzip у gzip есть 0-9 уровни сжатия, на 0 самое существенное различие, потом уже незначительный рост а вот затраты проца растут значительно ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:20 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Basil A. Sidorov petrav Вот поэтому и нужен не utf-8, а uc-32. Во-вторых, вы так и не можете понять простой вещи: составные символы останутся составными в любой кодировке. Фиксированное число бит у этой кодировки или переменное - без разницы. Я это отлично понимаю. Давайте по другому. Допустим у нас UC-32. Приведите пример составного символа, будем смотреть. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:22 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Алексей Роза mayton Соотв если апач хорошо жмёт контент в gzip у gzip есть 0-9 уровни сжатия, на 0 самое существенное различие, потом уже незначительный рост а вот затраты проца растут значительно Я просто акцентирую внимание на том что для информационной энтропии разрядность источника - не играет роли. Для энтропии просто интересна частота неких абстрактных символов. Кстати эта вся теория рождалась задолго до появления битов и байтов . Клод Шеннон - знатный старец среди кибернетиков и электротехников. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:27 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
petrav Приведите пример составного символа, будем смотреть. Где это проявляется на практике? Например, при отображении этого самого "ивана-краткого" в Far3. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:33 |
|
Очень интересны нюанс с оператором switch
|
|||
---|---|---|---|
#18+
Алексей Роза у gzip есть 0-9 уровни сжатия, на 0 самое существенное различие ... |
|||
:
Нравится:
Не нравится:
|
|||
27.07.2020, 12:36 |
|
|
start [/forum/topic.php?fid=57&msg=39983663&tid=2017371]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
37ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
1ms |
others: | 265ms |
total: | 400ms |
0 / 0 |