ときどきの雑記帖 RE* (新南口)
Some people have two wolves inside them... I HAVE TWO CATS
休刊
ザテレビジョンと言えば、 はるか昭和の昔ダンバインやエルガイムの放送当時にそれら毎週2ページ割いていて それを目当てに買っていたなあ(遠い目)
部数激減「週刊ザテレビジョン」休刊 “レモンの表紙”月刊版に移行 - ITmedia NEWS
メモ
NHK MUSIC SPECIAL 高橋幸宏 創造の軌跡 | NHK MUSIC|NHKブログ
Good Code, Bad Code
Amazonにも書影きた。 Kindle版も同時発売なのね。
んでいまさらのように気がついたのだけど 原著とちょっと違うのね、表紙。
two cats
5 DAYS LEFT FOR 2 CATS TEES
— cats being weird little guys (@weirdlilguys) January 21, 2023
➡️➡️ https://t.co/ExCtTTsppm ⬅️⬅️ pic.twitter.com/hohXscExlF
動画の方はさておき、このTシャツいいなあ😄
んが、プリントされている
Some people have two wolves inside them... I HAVE TWO CATS
という文章が気になったので(ry
猫に置き換えたらどうなるというのはさておき、 (心の中の)二頭の狼ってのはこの辺からすかね。
- Two Wolves - Wikipedia
- 「二匹の狼」~ネイティブアメリカンに伝わる有名なストーリー~ | 住宅リフォームなら川崎の工務店スマイルプラス
- weird lil guys – WeirdLilGuys
youtube
Prologと言えば最近こういうのも見かけた
- SuperDisk/tar.pl: tar creator+extractor in ~100 lines of prolog
- Tar.pl – A tar creator and extractor in ~130 lines of Prolog | Hacker News
decimal64
ふと気になって、試してみたらコンパイル「は」できた。
#include <stdio.h>
int
main()
{
_Decimal64 x = 0.1dd;
_Decimal64 y = 0.2dd;
printf("%10.2DF\n", x+y);
return 0;
}
↑これが、こうなる↓
.file "dec.c"
.text
.def __main; .scl 2; .type 32; .endef
.def __bid_adddd3; .scl 2; .type 32; .endef
.section .rdata,"dr"
.LC0:
.ascii "%10.2DF\12\0"
.text
.globl main
.def main; .scl 2; .type 32; .endef
.seh_proc main
main:
pushq %rbp
.seh_pushreg %rbp
movq %rsp, %rbp
.seh_setframe %rbp, 0
subq $48, %rsp
.seh_stackalloc 48
.seh_endprologue
call __main
movabsq $3575858104132173825, %rax
movq %rax, -8(%rbp)
movabsq $3575858104132173826, %rax
movq %rax, -16(%rbp)
movq -16(%rbp), %rdx
movq -8(%rbp), %rcx
call __bid_adddd3
movq %rax, %rdx
leaq .LC0(%rip), %rcx
call printf
movl $0, %eax
addq $48, %rsp
popq %rbp
ret
.seh_endproc
.ident "GCC: (x86_64-posix-seh, Built by strawberryperl.com project) 8.3.0"
.def printf; .scl 2; .type 32; .endef
call __bid_adddd3
とあるようにソフトウェアエミュレーションで四則演算くらいはできるみたい。
ただ、sinだのの数学関数は対応していないしprintfも対応していない
(ので上記のコードの出力は…)。
この辺使うともう少し何かできるみたいだけど面倒なので(ry
FORTRAN Compiler on IBM 704
最近追いかけているあたりのサブルーチンに ホレリス定数を「scan」する(「解析」ではなさげ) ものがあるのだけど
CD000 SCANS FOR HOLLERITH AND ILLEGAL CHARACTERS.
REM CD000/ CALLS=C0190X,C0190,DIAG. 4F11681
REM CD000 SCANS FOR HOLLERITH AND ILLEGAL CHARACTERS. 4F11682
CD000 TSX C0190X,4 * SET SCAN TO PICK UP 1ST CHARACTER. 4F11683
CD001 TSX CD900,1 * IF NOT ENDMARK OR ILLEGAL CHARACTER4F11684
CAS COMMA SCAN 4F11685
TXI CD002,0 FOR 4F11686
TXI CD003,0 HOLLERITH 4F11687
CD002 SUB OPEN SPECIFICATION 4F11688
TNZ CD001 WHICH 4F11689
CD003 TSX CD900,1 * CAN BE= 4F11690
SUB L(10) , N H 4F11691
TPL CD001 OR = ( N H. 4F11692
CD004 TSX CD900,1 * IF NOT ENDMARK OR ILLEGAL CHARACTER4F11693
CAS L(9) CONTINUE SCAN. 4F11694
TXI CD005,0 N 4F11695
TXI CD004,0 IS 4F11696
TXI CD004,0 A 4F11697
CD005 CAS L(H) FIXED 4F11698
TXI CD001+1,0 POINT 4F11699
TXI CD700,0 INTEGER. 4F11700
TXI CD001+1,0 X 4F11701
CD700 TSX C0190,4 * GO GET NEXT NONBLANK CHARACTER, 4F11702
CAS ENDMK AND IF ENDMARK, 4F11703
TXI CD701,0 THEN SKIP 4F11704
TXI CC000,0 * TO NON-ARITHMETIC CLASSIFICATION. 4F11705
CD701 TSX CD600,1 * SINCE HOLLERITH HAS BEEN FOUND, 4F11706
TXI CD700,0 THEN $ IS LEGAL IN FORMAT TEST. 4F11707
CD900 TSX C0190,4 * OBTAIN NEXT NONBLANK CHARACTER, 4F11708
CAS ENDMK AND IF NOT 4F11709
TXI CD800,0 ENDMARK, THEN SKIP 4F11710
TXI CB000,0 * EXIT TO ARITH/NON-ARITH SCAN. 4F11711
CD800 CAS SPECOP CHECK FOR $ 4F11712
TXI CD601,0 WHICH, UNLESS HOLERITH, IS AN 4F11713
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11714
CD600 CAS PM CHECK FOR RECORD MARK 4F11715
TRA 1,1 WHICH IS AN 4F11716
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11717
CD601 CAS CHAR3 CHECK FOR MINUS ZERO 4F11718
TRA 1,1 WHICH IS AN 4F11719
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11720
CAS CHAR2 CHECK FOR PLUS ZERO 4F11721
TRA 1,1 WHICH IS AN 4F11722
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11723
CAS MINUS CHECK FOR MINUS SIGN 4F11724
TRA 1,1 WHICH IS AN 4F11725
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11726
SUB TEN CHECK FOR TEN 4F11727
TNZ 1,1 WHICH IS AN 4F11728
TSX DIAG,4 * ERROR -- GO TO DIAGNOSTIC. 4F11729
REM END OF PROGRAM CD000. 4F11730
このサブルーチンには
SUB L(10) , N H 4F11691
と
SUB TEN CHECK FOR TEN 4F11727
というコードがある。 この L(10)やTENの定義がどうなっているかというとこう。
TEN OCT 12 (1010) - CTEST-11 4F10308
L(10) SYN TEN 4F15931
なんで同じサブルーチンの中で別名使っているんだろう?